Алгоритмы (C-Sharp)
Версия от 13:34, 6 июня 2021; Безуглов Сергей (обсуждение | вклад) (→Найти НОД(A,B), используя алгоритм Евклида:)
Код программ
Сумма вводимых целых чисел
1 using System;
2
3 namespace Hello
4 {
5 class Program
6 {
7 static void Main(string[] args)
8 {
9 Console.Write("Введите число слагаемых:");
10 string str = Console.ReadLine();
11 Int32.TryParse(str, out var n);
12
13 int sum = 0;
14 for(int i = 1; i <= n; i++) {
15 Console.Write($"Введите слагаемое №{i}:");
16 str = Console.ReadLine();
17 Int32.TryParse(str, out var x);
18 sum += x;
19 }
20
21 Console.WriteLine($"Сумма равна {sum}");
22 }
23 }
24 }
Произведение целых чисел
1 using System;
2
3 namespace Hello
4 {
5 class Program
6 {
7 static void Main(string[] args)
8 {
9 Console.Write("Введите число множителей:");
10 string str = Console.ReadLine();
11 Int32.TryParse(str, out var n);
12
13 int p = 1;
14 for(int i = 1; i <= n; i++) {
15 Console.Write($"Введите множитель №{i}:");
16 str = Console.ReadLine();
17 Int32.TryParse(str, out var x);
18 p *= x;
19 }
20
21 Console.WriteLine($"Произведение равно {p}");
22 }
23 }
24 }
Сколько нечетных среди n введенных
1 using System;
2
3 namespace Hello
4 {
5 class Program
6 {
7 static void Main(string[] args)
8 {
9 Console.Write("Введите число множителей:");
10 string str = Console.ReadLine();
11 Int32.TryParse(str, out var n);
12
13 int count = 0;
14 for(int i = 1; i <= n; i++) {
15 Console.Write($"Введите целое число:");
16 str = Console.ReadLine();
17 Int32.TryParse(str, out var x);
18 if (x % 2 != 0) {
19 count++;
20 }
21 }
22
23 Console.WriteLine($"Количество нечетных равно {count}");
24 }
25 }
26 }
Защита от неверного ввода
1 using System;
2
3 namespace Hello
4 {
5 class Program
6 {
7 static void Main(string[] args)
8 {
9 int x;
10 do {
11 Console.WriteLine("Введите x>0:");
12 string str = Console.ReadLine();
13 Int32.TryParse(str, out x);
14 if (x <= 0) {
15 Console.WriteLine("Неверный ввод");
16 }
17 } while (x <= 0);
18 }
19 }
20 }
Вывод 10 первых степеней двойки
1 using System;
2
3 namespace Hello
4 {
5 class Program
6 {
7 static void Main(string[] args)
8 {
9 int x = 2;
10
11 for (int i = 1; i <= 10; i++) {
12 Console.WriteLine($"{i,3} {x,5}");
13 x *= 2;
14 }
15 }
16 }
17 }
Вывод всех двухзначных чисел, кратных 5
1 using System;
2
3 namespace Hello
4 {
5 class Program
6 {
7 static void Main(string[] args)
8 {
9 int x = 10;
10
11 while (x < 100) {
12 Console.WriteLine(x);
13 x += 5;
14 }
15 }
16 }
17 }
Вывод n первых чисел Фибоначчи
1 using System;
2
3 namespace Hello
4 {
5 class Program
6 {
7 static void Main(string[] args)
8 {
9 Console.WriteLine("Введите целое число n (n > 1):");
10 string str = Console.ReadLine();
11 Int32.TryParse(str, out var n);
12
13 int a = 1; int b = 1;
14 Console.Write($"{a} {b} ");
15 for (int i = 1; i <= n - 2; ++i) {
16 int tmp = a;
17 a = b;
18 b += tmp;
19 Console.Write($"{b} ");
20 }
21 }
22 }
23 }
Найти НОД(A,B), используя алгоритм Евклида:
1 using System;
2
3 namespace Hello
4 {
5 class Program
6 {
7 static void Main(string[] args)
8 {
9 Console.WriteLine("Введите A:");
10 string str = Console.ReadLine();
11 Int32.TryParse(str, out var a);
12
13 Console.WriteLine("Введите B:");
14 str = Console.ReadLine();
15 Int32.TryParse(str, out var b);
16
17
18 while (b != 0) {
19 int tmp = a;
20 a = b;
21 b = tmp % b;
22 }
23
24 Console.WriteLine($"НОД(A, B) = {a}");
25 }
26 }
27 }