Алгоритмы (C): различия между версиями

Материал из Информационная безопасностя
Перейти к навигации Перейти к поиску
Строка 74: Строка 74:
 
=== Защита от неверного ввода ===
 
=== Защита от неверного ввода ===
 
<syntaxhighlight lang="c" line>
 
<syntaxhighlight lang="c" line>
 +
#include <stdio.h>
 +
#include <windows.h>
  
 +
int main() {
 +
    SetConsoleOutputCP(CP_UTF8);
 +
    float x;
 +
 +
    do {
 +
        printf("Введите x>0:");
 +
        scanf_s("%f", &x);
 +
        if (x <= 0) {
 +
            printf("Неверный ввод\n");
 +
        }
 +
    } while (x <= 0);
 +
}
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Версия 14:40, 5 июня 2021

Код программ

Сумма вводимых целых чисел

 1 #include <stdio.h>
 2 #include <windows.h>
 3 
 4 int main() {
 5     SetConsoleOutputCP(CP_UTF8);
 6     int n, x;
 7 
 8     printf("Введите число слагаемых:");
 9     scanf_s("%d", &n);
10 
11     int s = 0;
12     for(int i = 1; i <= n; i++) {
13         printf("Введите слагаемое №%d:", i);
14         scanf_s("%d", &x);
15         s += x;
16     }
17 
18     printf("Сумма равна %d", s);
19 }

Произведение целых чисел

 1 #include <stdio.h>
 2 #include <windows.h>
 3 
 4 int main() {
 5     SetConsoleOutputCP(CP_UTF8);
 6     int n, x;
 7 
 8     printf("Введите число множителей:");
 9     scanf_s("%d", &n);
10 
11     int p = 1;
12     for(int i = 1; i <= n; i++) {
13         printf("Введите множитель №%d:", i);
14         scanf_s("%d", &x);
15         p *= x;
16     }
17 
18     printf("Произведение равно %d", p);
19 }

Сколько нечетных среди n введенных

 1 #include <stdio.h>
 2 #include <windows.h>
 3 
 4 int main() {
 5     SetConsoleOutputCP(CP_UTF8);
 6     int n, x;
 7 
 8     printf("Введите n:");
 9     scanf_s("%d", &n);
10 
11     int c = 0;
12     for(int i = 1; i <= n; i++) {
13         printf("Введите целое число:");
14         scanf_s("%d", &x);
15         if (x % 2 != 0) {
16             c++;
17         }
18     }
19 
20     printf("Количество нечетных равно %d", c);
21 }

Защита от неверного ввода

 1 #include <stdio.h>
 2 #include <windows.h>
 3 
 4 int main() {
 5     SetConsoleOutputCP(CP_UTF8);
 6     float x;
 7 
 8     do {
 9         printf("Введите x>0:");
10         scanf_s("%f", &x);
11         if (x <= 0) {
12             printf("Неверный ввод\n");
13         }
14     } while (x <= 0);
15 }

Вывод 10 первых степеней двойки

Вывод всех двухзначных чисел, кратных 5

Вывод n первых чисел Фибоначчи

Найти НОД(A,B), используя алгоритм Евклида:

Найти сумму цифр целого числа m

Найти max из введенных чисел

Найти min, удовлетворяющее условию p(x)

Есть ли среди введенных число k?

Является ли число N>1 простым?

Разложение числа на простые множители