Отладка (C)
Версия от 10:20, 15 июня 2021; Безуглов Сергей (обсуждение | вклад)
Отладка
Примеры
Простое число
1 #include <stdio.h>
2 #include <stdbool.h>
3 #include <math.h>
4
5 bool IsSimple(int num) {
6 bool simple = true;
7 for (int i = 2; i < trunc(sqrt(num)); ++i) {
8 if (num % i == 0) {
9 simple = false;
10 break;
11 }
12 }
13
14 return simple;
15 }
16
17 int main() {
18 int n;
19 printf("Please, enter a number:\n");
20 fflush(stdout);
21 scanf_s("%d", &n);
22
23 bool simple = IsSimple(n);
24
25 printf("Number %d is %s.", n, simple ? "simple" : "composite");
26 fflush(stdout);
27 }
Числа Фибоначчи
1 #include <stdio.h>
2
3 int main() {
4 int n;
5 printf("Please, enter a number:\n");
6 fflush(stdout);
7 scanf_s("%d", &n);
8
9 int a = 0;
10 int b = 1;
11
12 while(b < n) {
13 int tmp = a;
14 a = b;
15 b = tmp + b;
16 }
17
18 printf("Number %d is %sa fibonacci number.", n, (b == n) ? "" : "not ");
19 fflush(stdout);
20 }
Доброе утро мистер Иван
1 #include <stdio.h>
2 #include <string.h>
3
4 char *GoodMorning(char *n, char *t) {
5 char* intro = "Good morning ";
6
7 strcat(intro, " ");
8 strcat(intro, t);
9 strcat(intro, " ");
10 strcat(intro, n);
11 strcat(intro, "!");
12
13 return intro;
14 }
15
16 int main() {
17 char* n = "Ivan";
18 char* t = "mr.";
19
20 printf("%s", GoodMorning(n, t));
21 fflush(stdout);
22 }
Факториал
1 // 5! = 1*2*3*4*5
2 // 5! = 5*4*3*2*1
3 // 4! = 4*3*2*1
4 // 3! = 3*2*1
5 // 2! = 2*1
6 // 1! = 1
7 // 5! = 5*4!
8 // 4! = 4*3!
9 // 3! = 3*2!
10 // 2! = 2*1!
11 // 1! = 1
12 #include <stdio.h>
13
14 int factorial(int num) {
15 return (num == 1) ? 1 : num * factorial(num - 1);
16 }
17
18 int main() {
19 int n;
20 printf("Please, enter a number:\n");
21 fflush(stdout);
22 scanf_s("%d", &n);
23
24 int f = factorial(n);
25
26 printf("%d! = %d", n, f);
27 fflush(stdout);
28 }