Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Отчёт для печати

.pdf
Скачиваний:
12
Добавлен:
27.05.2024
Размер:
729.24 Кб
Скачать

Рисунок 2.3 – Блок-схема задания 3

Рисунок 2.4 – Блок-схема задания 4

11

Рисунок 2.5 – Блок-схема задания 5

Рисунок 2.6 – Блок-схема задания6

Коды реализации данных блок-схем представлены в приложениях А – Е.

12

Заключение

В ходе работы были разработаны алгоритмы для решения заданных задач и созданы программные реализации для них на языке C#.

13

Приложение А

(обязательное)

Программная реализация задания 1

using System;

namespace AngleBetweenLineOXAndPointA

{

class Program

{

static void Main(string[] args)

{

Console.WriteLine("Введите координаты точки A:"); Console.Write("x = ");

double x = double.Parse(Console.ReadLine()); Console.Write("y = ");

double y = double.Parse(Console.ReadLine());

double angleInRadians = Math.Atan(y / x);

double angleInDegrees = angleInRadians * 180 / Math.PI;

Console.WriteLine($"Угол между отрезком прямой и осью ОХ равен

{angleInDegrees} градусов.");

}

}

}

14

Приложение Б

(обязательное)

Программная реализация задания 2

using System;

namespace CircleQuadrant

{

class Program

{

static void Main()

{

// Ввод координат центра окружности

Console.Write("Введите координату x0 центра окружности: "); double x0 = double.Parse(Console.ReadLine()); Console.Write("Введите координату y0 центра окружности: "); double y0 = double.Parse(Console.ReadLine());

//Ввод координат начальной и конечной точек Console.Write("Введите координату xn начальной точки: "); double xn = double.Parse(Console.ReadLine()); Console.Write("Введите координату yn начальной точки: "); double yn = double.Parse(Console.ReadLine()); Console.Write("Введите координату xk конечной точки: "); double xk = double.Parse(Console.ReadLine()); Console.Write("Введите координату yk конечной точки: "); double yk = double.Parse(Console.ReadLine());

//Вычисление радиуса окружности

double r = Math.Sqrt(Math.Pow(xn - x0, 2) + Math.Pow(yn - y0, 2));

//Вычисление углов начальной и конечной точек double alphaN = Math.Atan2(yn - y0, xn - x0); double alphaK = Math.Atan2(yk - y0, xk - x0);

//Приведение углов в интервал [0, 2π]

if (alphaN < 0) alphaN += 2 * Math.PI; if (alphaK < 0) alphaK += 2 * Math.PI;

// Определение четвертей для начальной и конечной точек

int quadrantN = (int)Math.Floor(alphaN / (Math.PI / 2)) + 1; int quadrantK = (int)Math.Floor(alphaK / (Math.PI / 2)) + 1;

// Вывод результатов

Console.WriteLine($"Начальная точка находится в {quadrantN}-ой четверти.");

Console.WriteLine($"Конечная точка находится в {quadrantK}-ой четверти.");

}

}

}

15

Приложение В

(обязательное)

Программная реализация задания 3

using System;

public class Program

{

public static void Main()

{

int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 ,22, 23, 24, 25 };

int sum = 0;

for (int i = 0; i < numbers.Length; i++)

{

if (numbers[i] % 2 == 0)

{

sum += numbers[i];

}

}

Console.WriteLine("Сумма четных чисел в массиве: " + sum);

}

}

16

Приложение Г

(обязательное)

Программная реализация задания 4

using System;

class Program

{

static void Main()

{

Console.Write("Введите число: ");

int input = int.Parse(Console.ReadLine()); int factorial = 1;

for (int i = 1; i <= input; i++)

{

factorial *= i;

}

Console.WriteLine("Факториал числа {0}: {1}", input, factorial);

Console.ReadLine();

}

}

17

Приложение Д

(обязательное)

Программная реализация задания 5

using System;

class Program

{

static void Main(string[] args)

{

//Ввод последовательности с клавиатуры int[] sequence = new int[18];

Console.WriteLine("Введите последовательность из 18 чисел:"); for (int i = 0; i < 18; i++)

{

sequence[i] = int.Parse(Console.ReadLine());

}

//Поиск количества равных элементов в начале последовательности int count = 0;

for (int i = 1; i < sequence.Length; i++)

{

if (sequence[i] == sequence[0]) // сравниваем с первым элементом

{

count++;

}

else

{

break; // выходим из цикла, если найден первый отличный элемент

}

}

//Вывод результата

Console.WriteLine("Количество равных элементов в начале последовательности:

"+ count);

}

}

18

Приложение Е

(обязательное)

Программная реализация задания 6

using System;

class Program

{

static void Main(string[] args)

{

for (int i = 1000; i < 10000; i++)

{

if (i % 133 == 125 && i % 134 == 111)

{

Console.WriteLine(i);

}

}

}

}

19

Приложение Ж

(обязательное)

Техническое задание на систему

20