Laboratornye_raboty_po_Microsoft_Visual_C

Основы работы с Microsoft Visual C#


Создание нового проекта
[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Создание нового проекта Файл/Создать новый проект...


[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Выбрать Консольное приложение и задать своё имя проекта



Написание и запуск программы
[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Свою программу писать внутри Main, для запуска нажать F5 или воспользоваться пиктограммой



Сохранение проекта
[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Сохранение проекта Файл/Сохранить всё


[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Можно указать новое имя проекта и папку для сохранения проекта



Загрузка ранее сохраненного проекта
[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Загрузка проекта Файл/Открыть проект


[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Выбрать файл с расширением sln в каталоге своего проекта






Лабораторная работа №1

Целью лабораторного занятия является освоение модуля №1 изучаемой дисциплины, приобретение навыков практического применения знаний для создания простейших программ с неразветвлённым вычислительным процессом.
В задачи лабораторного занятия входят:
закрепление знаний учащихся в процессе выполнения анализа алгоритма решаемой задачи;
приобретение умений и навыков использования современных сред разработки программного обеспечения.
Формой выполнения лабораторной работы является поиск оптимальных алгоритмов решения программных задач с целью изучения основ программирования с формированием выводов и заключений.
Задание на лабораторную: Ознакомиться со средой [ Cкачайте файл, чтобы посмотреть ссылку ] , решить 3 задачи по вариантам и оформить отчёт.
Задание №1

Задачи на [ Cкачайте файл, чтобы посмотреть ссылку ] , [ Cкачайте файл, чтобы посмотреть ссылку ] , [ Cкачайте файл, чтобы посмотреть ссылку ] , [ Cкачайте файл, чтобы посмотреть ссылку ]. Все входные и выходные данные в заданиях этой группы являются [ Cкачайте файл, чтобы посмотреть ссылку ] . Не требуется выполнять проверку введённых пользователем данных.
Задачи по вариантам
1. Даны катеты прямоугольного треугольника a и b. Найти его гипотенузу c и периметр P.
2. Даны два круга с общим центром и радиусами R1 и R2 (R1 > R2). Найти площади этих кругов S1 и S2, а также площадь S3 кольца, внешний радиус которого равен R1, а внутренний радиус равен R2.
3. Дана длина L окружности. Найти ее радиус R и площадь S круга, ограниченного этой окружностью.
4. Даны три точки A, B, C на числовой оси. Точка C расположена между точками A и B. Найти произведение длин отрезков AC и BC.
5. Даны координаты двух противоположных вершин прямоугольника: (x1, y1), (x2, y2). Стороны прямоугольника параллельны осям координат. Найти периметр и площадь данного прямоугольника.
6. Даны координаты трех вершин треугольника: (x1, y1), (x2, y2), (x3, y3). Найти его периметр и площадь, используя формулу для расстояния между двумя точками на плоскости. Для нахождения площади треугольника со сторонами a, b, c использовать формулу Герона:S =(p·(p – a)·(p – b)·(p – c))1/2, где p = (a + b + c)/2 полупериметр.
7. Дано значение температуры T в градусах Фаренгейта. Определить значение этой же температуры в градусах Цельсия. Температура по Цельсию TC и температура по Фаренгейту TF связаны следующим соотношением:TC = (TF – 32)·5/9. [ Cкачайте файл, чтобы посмотреть ссылку ]
8. Известно, что X кг шоколадных конфет стоит A рублей, а Y кг ирисок стоит B рублей. Определить, сколько стоит 1 кг шоколадных конфет, 1 кг ирисок, а также во сколько раз шоколадные конфеты дороже ирисок.
9. Скорость лодки в стоячей воде V км/ч, скорость течения реки U км/ч (U < V). Время движения лодки по озеру T1 ч, а по реке (против течения) T2 ч. Определить путь S, пройденный лодкой (путь = время · скорость). Учесть, что при движении против течения скорость лодки уменьшается на величину скорости течения.
10. Скорость первого автомобиля V1 км/ч, второго V2 км/ч, расстояние между ними S км. Определить расстояние между ними через T часов, если автомобили первоначально движутся навстречу друг другу.
Задание №2
Задачи на [ Cкачайте файл, чтобы посмотреть ссылку ] . Все входные и выходные данные в заданиях этой группы являются целыми числами. Все числа, для которых указано количество цифр (двузначное число, трехзначное число и т. д.), считаются положительными. Не требуется выполнять проверку введённых пользователем данных.
Задачи по вариантам
1. Даны целые положительные числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Используя операцию деления нацело, найти количество отрезков B, размещенных на отрезке AB.
2. Дано трехзначное число. Найти сумму и произведение его цифр.
3. Дано трехзначное число. Вывести число, полученное при прочтении исходного числа справа налево.
4. Дано трехзначное число. В нем зачеркнули первую слева цифру и приписали ее справа. Вывести полученное число.
5. Дано трехзначное число. В нем зачеркнули первую справа цифру и приписали ее слева. Вывести полученное число.
6. Дано трехзначное число. Вывести число, полученное при перестановке цифр сотен и десятков исходного числа (например, 123 перейдет в 213).
7. Дано целое число, большее 999. Используя только целочисленные операции, найти цифру, соответствующую разряду сотен в записи этого числа.
8. Дни недели пронумерованы следующим образом: 1 понедельник, 2 вторник, , 6 суббота, 7 воскресенье. Дано целое число K, лежащее в диапазоне 1–365, и целое число N, лежащее в диапазоне 1–7. Определить номер дня недели для K-го дня года, если известно, что в этом году 1 января было днем недели с номером N.
9. Даны целые положительные числа A, B, C. На прямоугольнике размера A * B размещено максимально возможное количество квадратов со стороной C (без наложений). Найти количество квадратов, размещенных на прямоугольнике, а также площадь незанятой части прямоугольника.
10. Дан номер некоторого года (целое положительное число). Определить соответствующий ему номер столетия, учитывая, что, к примеру, началом 20 столетия был 1901 год.
Задание №3
Задачи на использование [ Cкачайте файл, чтобы посмотреть ссылку ] , [ Cкачайте файл, чтобы посмотреть ссылку ] . Во всех заданиях данной группы требуется вывести логическое значение True, если приведенное высказывание для предложенных исходных данных является истинным, и значение False в противном случае. Все числа, для которых указано количество цифр (двузначное число, трехзначное число и т. д.), считаются целыми положительными. Не требуется выполнять проверку введённых пользователем данных. Использование IF и оператора "?" недопустимо.
Задачи по вариантам
1. Даны координаты двух различных полей шахматной доски x1, y1, x2, y2 (целые числа, лежащие в диапазоне 1–8). Проверить истинность высказывания: «Данные поля имеют одинаковый цвет». Если пользователь введёт дважды координаты одной и той же клетки считать решение задачи ложью.
2. Даны координаты двух различных полей шахматной доски x1, y1, x2, y2 (целые числа, лежащие в диапазоне 1–8). Проверить истинность высказывания: «Ладья за один ход может перейти с одного поля на другое». Если пользователь введёт дважды координаты одной и той же клетки считать решение задачи ложью.
3. Даны координаты двух различных полей шахматной доски x1, y1, x2, y2 (целые числа, лежащие в диапазоне 1–8). Проверить истинность высказывания: «Король за один ход может перейти с одного поля на другое». Если пользователь введёт дважды координаты одной и той же клетки считать решение задачи ложью. 
4. Даны координаты двух различных полей шахматной доски x1, y1, x2, y2 (целые числа, лежащие в диапазоне 1–8). Проверить истинность высказывания: «Слон за один ход может перейти с одного поля на другое». Если пользователь введёт дважды координаты одной и той же клетки считать решение задачи ложью.
5. Даны координаты двух различных полей шахматной доски x1, y1, x2, y2 (целые числа, лежащие в диапазоне 1–8). Проверить истинность высказывания: «Ферзь за один ход может перейти с одного поля на другое». Если пользователь введёт дважды координаты одной и той же клетки считать решение задачи ложью. 
6. Даны координаты двух различных полей шахматной доски x1, y1, x2, y2 (целые числа, лежащие в диапазоне 1–8). Проверить истинность высказывания: «Конь за один ход может перейти с одного поля на другое». Если пользователь введёт дважды координаты одной и той же клетки считать решение задачи ложью. 
7. Даны целые числа a, b, c, являющиеся сторонами некоторого треугольника. Проверить истинность высказывания: «Треугольник со сторонами a, b, c является прямоугольным».
8. Дано трехзначное число. Проверить истинность высказывания: «Цифры данного числа образуют возрастающую или убывающую последовательность».
9. Дано целое положительное число. Проверить истинность высказывания: «Данное число является нечетным трехзначным».
10. Даны координаты поля шахматной доски x, y (целые числа, лежащие в диапазоне 1–8). Учитывая, что левое нижнее поле доски (1, 1) является черным, проверить истинность высказывания: «Данное поле является белым».
Отчёт по лабораторной работе
Отчёт оформляется на сброшюрованных листах формата А4 (210х297мм) или в электронной версии. Отчёт составляется каждым студентом. Отчёт по лабораторной работе оформляется в соответствии с требованиями СТП 12 570-2006 и должен включать следующие структурные элементы: 1) титульный лист; 2) цель работы; 3) основную часть. По каждой из решённых задач в отчёте должны быть:
постановка задачи;
словесное объяснение алгоритма
текст программы с комментариями;
не менее десяти тестовых примеров. Один из примеров подтверждается скриншотом исполняемой программы в обязательном порядке.
4) развёрнутые выводы по работе; 5) список использованной литературы и Интернет-ресурсов (обязательно).

Пример №1
Составить программу для вычисления значения y(x) и для некоторых x произвести вычисления
[ Cкачайте файл, чтобы посмотреть ссылку ]
Double x,y; string s; //Описываем переменные
Console.Write("Введите x="); //Выдаём приглашение для ввода х
s = Console.ReadLine(); //Вводим строку s
x = Convert.ToDouble(s); //Преобразовываем строку в х

y = (x / 2 * Math.Exp(x) + Math.Log(1 + Math.Exp(x))) /
(Math.Pow(Math.Sin(x), 2)
+ Math.Sin(Math.Sqrt(x)));//Вычисляем y согласно формуле

Console.Write("y(x)={0}",y); //Печатаем полученный результат

Console.ReadKey(); //Ожидаем нажатия на любую клавишу в конце программы
[ Cкачайте файл, чтобы посмотреть ссылку ]
Пример №2
С начала суток прошло N секунд (N целое). Записать текущее время выраженное в часах, минутах, секундах. Даже если прошло прошло несколько суток, отобразить время последних суток.
int N,hours,minutes,seconds; string s;
Console.Write("Введите число секунд прошедших от начала суток N=");
s = Console.ReadLine(); //вводим произвольное число секунд
N = Convert.ToInt32(s);

hours = N / 3600 % 24; // находим число часов, и оставляем только
//часы в последних сутках, если их больше 24
minutes = N % 3600 / 60; // определяем число минут
seconds = N % 3600 % 60; // определяем число секунд

Console.Write("Время {0}:{1}:{2}", hours, minutes, seconds);
Console.ReadKey();





Лабораторная работа №2
Целью лабораторного занятия является освоение модуля №2 изучаемой дисциплины, приобретение навыков практического применения знаний для создания простейших программ с разветвлённым и циклическим вычислительными процессами.
Задание на лабораторную: В среде [ Cкачайте файл, чтобы посмотреть ссылку ] , решить 3 задачи по вариантам и оформить отчёт.
Задание №1
Задачи на использование [ Cкачайте файл, чтобы посмотреть ссылку ]. Осуществить [ Cкачайте файл, чтобы посмотреть ссылку ] необходимых данных, выполнить реализацию алгоритма с использованием операторов условия, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Не допускается использование операторов, прерывающих ход программы (break, goto).
Задачи по вариантам
1.Ввести номер года (положительное целое число). Определить количество дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный 366 дней. Високосным считается год, делящийся на 4, за исключением тех годов, которые делятся на 100 и не делятся на 400 (например, годы 300, 1300 и 1900 не являются високосными, а 1200 и 2000 являются).
2.Ввести целочисленные координаты трех вершин прямоугольника, стороны которого параллельны координатным осям. Найти координаты его четвертой вершины. Если пользователь введёт координаты точек так, что нельзя получить прямоугольник со сторонами, параллельными координатным осям, вывести соответствующее сообщение.
3.На числовой оси расположены три точки: A, B, C. Определить, какая из двух последних точек (B или C) расположена ближе к A, и вывести эту точку и ее расстояние от точки A. Если пользователь введёт координаты B и C так, что они будут равноотстоящими от А, совпадать с А или между собой - выдать соответствующее сообщение.
4.Ввести четыре целых числа A, B, C, D, одно из которых отлично от трех других, равных между собой. Определить порядковый номер числа, отличного от остальных. Если пользователь введёт числа так, что они не будут соответствовать условию задачи - выдать сообщение об ошибке.
5.Ввести три числа А,В,С. Если среди них имеется хотя бы одно четное вывести максимальное из них, иначе - минимальное. Если пользователь введёт числа так, что среди них нельзя будет определить лишь одно максимальное/минимальное - выдать соответствующее сообщение.
6.Ввести три переменные вещественного типа: A, B, C. Если их значения упорядочены по возрастанию или убыванию, то удвоить их; в противном случае заменить знак каждой переменной на противоположный. Вывести новые значения переменных A, B, C.
7.Ввести три числа A, B, C. Найти сумму двух наибольших из них. Если пользователь введёт числа так, что среди них нельзя будет определить два наибольших - выдать соответствующее сообщение.
8.Ввести три числа A, B, C. Вывести вначале наименьшее, а затем наибольшее из данных чисел. Если пользователь введёт числа так, что среди них нельзя будет определить одно наименьшее/наибольшее - выдать соответствующее сообщение.
9.Ввести три числа A, B, C. Вывести среднее по величине из них (то есть число, расположенное между наименьшим и наибольшим). Если пользователь введёт числа так, что среди них нельзя будет определить среднее - выдать соответствующее сообщение.
10.Ввести три целых числа A, B, C. Найти количество положительных и количество отрицательных чисел в исходном наборе.
Задание №2
Задачи на использование [ Cкачайте файл, чтобы посмотреть ссылку ] . Осуществить [ Cкачайте файл, чтобы посмотреть ссылку ] необходимых данных, выполнить реализацию алгоритма с использованием операторов варианта, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Не допускается использование массивов и операторов goto.
Задачи по вариантам
1.Даны два целых числа: D (день) и M (месяц), определяющие правильную дату невисокосного года. Вывести значения D и M для даты, предшествующей указанной. Если пользователь вводит D и M несоответствующие календарю - выдать сообщение об ошибке. См. также: [ Cкачайте файл, чтобы посмотреть ссылку ] . Осуществить [ Cкачайте файл, чтобы посмотреть ссылку ] необходимых данных, выполнить реализацию алгоритма с использованием операторов цикла do - while, обеспечить вывод полученных результатов. Использование других операторов цикла недопустимо. Для решения задачи предварительно составляется блок-схема. Не допускается использование массивов и операторов, прерывающих ход программы (break, goto).
Задачи по вариантам
1.Ввести два целых числа N1 и N2. Если N1 >N2, найти сумму целых чисел в диапазоне N1 ... N2. Если N2 больше N1, найти сумму целых чисел в диапазоне N2... N1. Если N1 равно N2, вывести на экран соответствующее сообщение.
2.Осуществить ввод последовательности целых чисел, определить третье положительное число и подсчитать количество цифр в нем. Последовательность потенциально не ограничена, окончанием последовательности служит третье положительное число.
3.Осуществить ввод последовательности целых чисел, определить максимальное четное число, его порядковый номер и подсчитать сумму его цифр. Последовательность потенциально не ограничена, окончанием последовательности служит число 0. Если окажется, что чётных чисел в последовательности не было, вывести соответствующее сообщение.
4.Осуществить ввод последовательности целых чисел и сравнить, что больше, сумма положительных или произведение отрицательных. Последовательность потенциально не ограничена, окончанием последовательности служит число 0.
5.Осуществить ввод последовательности целых чисел и определить предпоследнее отрицательное число. Последовательность потенциально не ограничена, окончанием последовательности служит число 0. Если окажется, что в последовательности было менее двух отрицательных чисел, вывести соответствующее сообщение.
6.Осуществить ввод целого числа М. На промежутке от 1 до M найти все числа Армстронга. Натуральное число из n цифр называется числом Армстронга, если сумма его цифр, возведенных в n-ю степень, равна самому числу. Примеры: 153=13 + 53+ 33; 1634=14+64+34+44.
7.Ввести действительное число х и натуральное число n. Вычислить x*(x - n)*(x - 2*n)(x - 3*n)(x - n2).
8.Осуществить ввод последовательности целых чисел. Определить, сколько из них и какие принимают наибольшее значение. Последовательность потенциально не ограничена, окончанием последовательности служит число 0.
9.Осуществить ввод последовательности целых чисел в количестве не меньшем двух. Вычислить сумму тех из них, порядковые номера которых - простые числа. Последовательность потенциально не ограничена, окончанием последовательности служит число 0.
10.Осуществить ввод последовательности целых чисел в количестве не меньшем трёх. Определить, сколько из них больше своих "соседей", т.е. предыдущего и последующего чисел. Последовательность потенциально не ограничена, окончанием последовательности служит число 0.
Отчёт по лабораторной работе
По каждой из решённых задач в отчёте должны быть:
Постановка задачи
Словесное объяснение алгоритма
Блок-схема
Текст программы с комментариями
Не менее десяти тестовых примеров. Один из примеров подтверждается скриншотом исполняемой программы в обязательном порядке.
Пример №1
Написать программу, которая считывает введённое пользователем с клавиатуры целое число (использовать переменную целого типа) и выдает на экран дисплея сумму цифр этого числа.
[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Блок-схема для примера 1

Решение
Описание алгоритма: поскольку программа должна суммировать цифры числа, предполагается выполнение циклических действий, так как в числе может быть несколько разрядов. Из всех операторов цикла лучше всего подходит цикл с постусловием, который выполняется как минимум один раз: это его свойство очень важно для нас, так как в любом числе хотя бы один разряд всегда есть.
В цикле будем суммировать разряды числа, на каждом шаге выделяя по одному разряду. Выделение самого младшего разряда числа (самой правой цифры числа) будем осуществлять нахождением остатка от деления на 10. Поскольку введённое число может быть отрицательным, то и остаток от деления нужно брать по модулю на каждом шаге. Далее необходимо отбросить самый младший разряд числа, для этого воспользуемся целочисленным делением на 10. Цикл будем повторять до тех пор, пока все разряды числа не закончатся, то есть в результате деления на 10 останется нуль.
int n, sum; string s; //описываем необх. переменные
Console.Write("Введите целое число N=");
s = Console.ReadLine(); //вводим число
n = Convert.ToInt32(s); //преобразовываем к целому типу

sum = 0; //обнуляем сумму перед циклом
do {
sum +=Math.Abs( n % 10); //прибавляем к сумме
//самую правую цифру числа n
n /=10; //челочисленно делим n на 10,
//т.е. отбрасываем самую правую цифру
}while (n!=0); //повторяем пока не закончатся
//все разряды числа n

Console.WriteLine("Сумма цифр числа S={0}",sum);
Console.ReadKey();
[ Cкачайте файл, чтобы посмотреть ссылку ]
Пример №2
Написать программу, распечатывающую список счастливых билетов. Если на автобусном билете напечатано шестизначное число, и сумма первых трёх цифр равна сумме последних трёх, то этот билет считается счастливым. Список нужно выдавать по 10 счастливых номеров, с паузой для нажатия клавиши.
Решение
[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Блок-схема для примера 2

Описание алгоритма: решать задачу будем перебором. Номер билета состоит из 6 независимых цифр, каждая из которых может принимать значения от 0 до 9, следовательно удобнее всего воспользоваться циклом for. Так как все 6 цифр числа независимы, то нам необходимо будет использовать 6 циклов for, вложенных один в другой. Каждый цикл будет перебирать цифры от 0 до 9, вызывая для исполнения все вложенные циклы. Следовательно, тело самого вложенного цикла исполнится 106 раз, перебрав все комбинации из 6 цифр. Внутри самого вложенного цикла будем проверять "счастливость" билета, и если это так будем его печатать. Для обеспечения постепенной распечатки номеров воспользуемся ещё одним счётчиком, по достижению которым 10, будем вставлять пустую строку и ожидание нажатия клавиши.
int a1, a2, a3, a4, a5, a6, i;//описываем переменные
i = 0;// обнуляем счётчик для числа выведенных билетов
for (a1=0;a1<=9;a1++) //запускаем серию вложенных циклов
for (a2=0;a2<=9;a2++)
for (a3=0;a3<=9;a3++)
for (a4=0;a4<=9;a4++)
for (a5=0;a5<=9;a5++)
for (a6=0;a6<=9;a6++)
if (a1 + a2 + a3 == a4 + a5 + a6)//проверяем
//"счастливость" билета
{Console.WriteLine("{0}{1}{2}{3}{4}{5}",
a1, a2, a3, a4, a5, a6);//печатаем
i++; //увеличиваем счётчик счастливых билетов
if (i == 10) //как только достигаем 10
{Console.WriteLine(); //выводим пустую строку
Console.ReadKey(); i = 0;//и обнуляем счётчик
}
}
Console.ReadLine();
[ Cкачайте файл, чтобы посмотреть ссылку ]
Лабораторная работа №3

Целью лабораторного занятия является освоение модуля №3 изучаемой дисциплины, приобретение навыков практического применения знаний для создания простейших программ работы с массивами и строками.
Задание на лабораторную: В среде [ Cкачайте файл, чтобы посмотреть ссылку ] , решить 4 задачи по вариантам и оформить отчёт.
Задание №1
Задачи на использование [ Cкачайте файл, чтобы посмотреть ссылку ] . Условие вида "дан массив" означает, что пользователем вводится величина размерности и все элементы массива с клавиатуры. Осуществить ввод необходимых данных, выполнить реализацию алгоритма, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Если по ходу решения задачи требуется создание дополнительных массивов, размерность которых изначально неизвестна, необходимо выполнить предварительную обработку исходного массива, для выяснения размерности вновь создаваемого. Не допускается использование операторов, прерывающих ход программы (break, goto). Ввод массивов, обработка и вывод результатов реализуется отдельными [ Cкачайте файл, чтобы посмотреть ссылку ].
Задачи по вариантам
1 Даны два массива A и B одинакового размера N. Сформировать новый массив C того же размера, каждый элемент которого равен максимальному из элементов массивов A и B с тем же индексом.
2 Дан целочисленный массив A размера N. Переписать в новый целочисленный массив B все четные числа из исходного массива (в том же порядке) и вывести размер полученного массива B и его содержимое.
3 Дан массив A размера N. Сформировать новый массив B того же размера по следующему правилу: элемент BK равен сумме элементов массива A с номерами от 0 до K.
4 Дан массив A размера N. Сформировать новый массив B того же размера по следующему правилу: элемент BK равен среднему арифметическому элементов массива A с номерами от 0 до K.
5 Дан массив A размера N. Сформировать два новых массива B и C: в массив B записать все положительные элементы массива A, в массив C все отрицательные (сохраняя исходный порядок следования элементов). Вывести вначале размер и содержимое массива B, а затем размер и содержимое массива C.
6 Даны два массива A и B, элементы которых упорядочены по возрастанию. Объединить эти массивы так, чтобы результирующий массив C остался упорядоченным по возрастанию
7 Даны два массива A и B. Распечатать те элементы, которые присутствуют в обоих массивах.
8 Даны два массива A и B. Распечатать те элементы массива А, которых нет в массиве В. Распечатать те элементы массива В, которых нет в массиве А.
9 Даны два массива A и B. Определить которых из них имеет больший диапазон, т.е. разницу между самым большим и самым меньшим значением.
10 Дан целочисленный массив A размера N. Переписать в новый целочисленный массив B все элементы с порядковыми номерами, кратными трем (3, 6, ), и вывести размер полученного массива B и его содержимое. Условный оператор не использовать.
Задание №2
Задачи на исследование серий в [ Cкачайте файл, чтобы посмотреть ссылку ] . Условие вида "дан массив" означает, что пользователем вводится величина размерности и все элементы массива с клавиатуры. Осуществить ввод необходимых данных, выполнить реализацию алгоритма, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Если по ходу решения задачи требуется создание дополнительных массивов, размерность которых изначально неизвестна, необходимо выполнить предварительную обработку исходного массива, для выяснения размерности вновь создаваемого. Не допускается использование операторов, прерывающих ход программы (break, goto). Ввод массивов, обработка и вывод результатов реализуется отдельными [ Cкачайте файл, чтобы посмотреть ссылку ] .
Задачи по вариантам
1 Дан целочисленный массив A размера N. Назовем серией группу подряд идущих одинаковых элементов, а длиной серии количество этих элементов (длина серии может быть равна 1). Сформировать два новых целочисленных массива B и C одинакового размера, записав в массив B длины всех серий исходного массива, а в массив C значения элементов, образующих эти серии.
2 Дан целочисленный массив размера N. Вставить перед каждой его серией элемент с нулевым значением. Серия - это группа подряд идущих одинаковых элементов, длина серии количество этих элементов (длина серии может быть равна 1).
3 Дан целочисленный массив размера N. Вставить после каждой его серии элемент с нулевым значением. Серия - это группа подряд идущих одинаковых элементов, длина серии количество этих элементов (длина серии может быть равна 1).
4 Дан целочисленный массив размера N. Преобразовать массив, увеличив каждую его серию на один элемент. Серия - это группа подряд идущих одинаковых элементов, длина серии количество этих элементов (длина серии может быть равна 1).
5 Дан целочисленный массив размера N. Преобразовать массив, уменьшив каждую его серию на один элемент. Серия - это группа подряд идущих одинаковых элементов, длина серии количество этих элементов (длина серии может быть равна 1).
6 Дано целое число K и целочисленный массив размера N. Удалить из массива серию с номером K. Если серий в массиве меньше K, то вывести массив без изменений. Серия - это группа подряд идущих одинаковых элементов, длина серии количество этих элементов (длина серии может быть равна 1).
7 Дано целое число K и целочисленный массив размера N. Поменять местами первую серию массива и его серию с номером K. Если серий в массиве меньше K, то вывести массив без изменений. Серия - это группа подряд идущих одинаковых элементов, длина серии количество этих элементов (длина серии может быть равна 1).
8 Дано целое число L и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на один элемент с нулевым значением. Серия - это группа подряд идущих одинаковых элементов, длина серии количество этих элементов (длина серии может быть равна 1).
9 Дан целочисленный массив размера N. Преобразовать массив, увеличив его первую серию наибольшей длины на один элемент. Серия - это группа подряд идущих одинаковых элементов, длина серии количество этих элементов (длина серии может быть равна 1).
10 Дан целочисленный массив размера N. Преобразовать массив, увеличив все его серии наибольшей длины на один элемент. Серия - это группа подряд идущих одинаковых элементов, длина серии количество этих элементов (длина серии может быть равна 1).
Задание №3
Задачи на обработку [ Cкачайте файл, чтобы посмотреть ссылку ] . Условие вида "дана строка" означает, что пользователем вводится строка с клавиатуры. Осуществить ввод необходимых данных, выполнить реализацию алгоритма, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Не допускается использование операторов, прерывающих ход программы (break, goto). Ввод строк, обработка и вывод результатов реализуется отдельными [ Cкачайте файл, чтобы посмотреть ссылку ] .
1 Даны строки S и S0. Проверить, содержится ли строка S0 в строке S. Не использовать стандартные средства для поиска подстрок.
2 Даны строки S и S0. Найти количество вхождений строки S0 в строку S. Не использовать стандартные средства для поиска подстрок.
3 Дана строка S. Разделить строку на отдельные слова не используя стандартные средства для разбиения строк.
4 Дана строка S. Из строки требуется удалить текст, заключенный в фигурные скобки. В строке может быть несколько фрагментов, заключённых в фигурные скобки. Возможно использование вложенных фигурных скобок и, следовательно необходимо, чтобы программа это учитывала.
5 Дана строка S. Найти количество различных букв в ней. Программа должна работать без учёта регистра букв.
6 Дана строка S. Найти количество различных слов в ней. Программа должна работать без учёта регистра букв.
7 Дана строка S. Определить есть ли в строке удвоенные буквы (пара соседствующих одинаковых букв), напечатать слова, содержащие их.
8 Дана строка S (предложение). Найти самое длинное слово в строке не используя стандартные средства для разбиения строк.
9 Дана строка S (предложение). Составить программу, определяющую является ли текст перевёртышем без учёта пробелов.
10 Дана строка. Вывести все слова, у которых первая и последняя буквы одинаковые не используя стандартные средства для разбиения строк.
Задание №4
Задачи на [ Cкачайте файл, чтобы посмотреть ссылку ] . Условие вида "дана матрица" означает, что пользователем вводится с клавиатуры размерность и все элементы. Осуществить ввод необходимых данных, выполнить реализацию алгоритма, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Не допускается использование операторов, прерывающих ход программы (break, goto). Ввод многомерных массивов, обработка и вывод результатов реализуется отдельными [ Cкачайте файл, чтобы посмотреть ссылку ] .
1 Дана целочисленная матрица размера M х N. Найти номер первого из ее столбцов, содержащих максимальное количество одинаковых элементов.
2 Дана матрица размера M х N. Найти ее строки, элементы которых упорядочены по возрастанию.
3 Дана целочисленная матрица размера M х N. Различные строки матрицы назовем похожими, если совпадают множества чисел, встречающихся в этих строках. Найти строки, похожие на первую строку данной матрицы.
4 Дана целочисленная матрица размера M х N. Найти ее строки, все элементы которых различны.
5 Дана квадратная целочисленная матрица размера M. Написать программу, которая проверяет, является ли введенная с клавиатуры матрица магическим квадратом. Магическим квадратом называется матрица, сумма элементов которой в каждой строке, в каждом столбце и по каждой диагонали одинакова.
6 Дана матрица размера M х N. Упорядочить ее столбцы так, чтобы их последние элементы образовывали убывающую последовательность.
7 Дана матрица размера M х N. Элемент матрицы называется ее локальным максимумом, если он больше всех окружающих его элементов. Поменять знак всех локальных максимумов данной матрицы на противоположный. При решении допускается использовать вспомогательную матрицу.
8 Дана матрица размера M х N. Упорядочить ее строки так, чтобы их минимальные элементы образовывали убывающую последовательность.
9 Дана целочисленная матрица размера M х N. Найти ее строки, содержащие равное количество положительных и отрицательных элементов (нулевые элементы матрицы не учитываются). Если таких строк нет, то вывести соответствующее сообщение.
10 Дана матрица размером m*n, определить количество и координаты особых элементов матрицы. Элемент считается особым, если он больше суммы остальных элементов своего столбца и при этом в его строке слева от него находятся элементы меньше него, а справа больше него. (Особый элемент может быть крайним в строке)
Отчёт по лабораторной работе
По каждой из решённых задач в отчёте должны быть:
Постановка задачи
Словесное объяснение алгоритма
Блок-схема
Текст программы с комментариями
Не менее десяти тестовых примеров. Один из примеров подтверждается скриншотом исполняемой программы в обязательном порядке.

Лабораторная работа №4
Целью лабораторного занятия является освоение модуля №4 изучаемой дисциплины, приобретение навыков практического применения знаний для создания простейших программ работы с файлами.
Задание на лабораторную: В среде [ Cкачайте файл, чтобы посмотреть ссылку ] , решить 2 задачи по вариантам и оформить отчёт.
Задание №1
Задачи на использование [ Cкачайте файл, чтобы посмотреть ссылку ] . Условие вида "дан файл" означает, что пользователем вводится количество элементов и все элементы файла с клавиатуры. Осуществить ввод данных для файла, выполнить реализацию алгоритма обработки и создания нового файла, обеспечить вывод полученных результатов используя отдельные [ Cкачайте файл, чтобы посмотреть ссылку ] .Метод представляет собой блок кода, содержащий набор инструкций. В C# все инструкции выполняются в контексте метода. В этом разделе описываются именованные методы. Другой тип методов, называемых анонимными функциями, описан в других разделах документации.

Методы
Методы объявляются в классе или в структуре путем указания уровня доступа, возвращаемого значения, имени метода и списка параметров этого метода. Все вместе эти элементы образуют подпись метода. Параметры заключаются в круглые скобки и разделяются запятыми. Пустые скобки указывают на то, что у метода нет параметров.
Методы имеют смысл подпрограмм. В случае, если метод возвращает какое-либо значение, его использование схоже с использованием функции. Если метод не возвращает никаких значений - его применение аналогично процедуре.
Методы могут возвращать значения вызывающим их объектам. Если тип возвращаемого значения, указываемый перед именем метода, не равен void, для возвращения значения используется ключевое слово return. В результате выполнения инструкции с ключевым словом return, после которого указано значение нужного типа, вызвавшему метод объекту будет возвращено это значение. Кроме того, ключевое слово return останавливает выполнение метода. Если тип возвращаемого значения void, инструкцию return без значения все равно можно использовать для завершения выполнения метода. Если ключевое слово return отсутствует, выполнение метода завершится, когда будет достигнут конец его блока кода. Для возврата значений методами с типом возвращаемого значения отличным от void необходимо обязательно использовать ключевое словоreturn.
Чтобы использовать возвращаемое методом значение в вызываемом методе, вызов метода можно поместить в любое место кода, где требуется значение соответствующего типа.
Пример и использованием возвращаемого значения:
static string my_func()
{ //данный метод возвращает строку
return "Hello world!";
}
static void Main(string[] args)
{ //"Главный" метод
string s = "*** "+my_func()+" ***";
Console.WriteLine(s);
}
Пример с использованием void:
static void my_proc()
{
Console.WriteLine( "Hello world!");
}

static void Main(string[] args)
{
my_proc();
}
Передача параметров типа значения
Переменная типа значения содержит данные непосредственно, в противоположность переменной ссылочного типа, которая содержит ссылку на данные. Поэтому передача переменной типа значения методу означает передачу методу копии переменной. Любые изменения параметра, выполняемые внутри метода, не влияют на исходные данные, хранимые в переменной. Если требуется, чтобы вызываемый метод изменял значение параметра, его следует передавать ссылкой с помощью ключевого словаref или out.
Передача типов значений с помощью значения
Пример: написать метод вычисляющий факториал числа, и возвращающий это значение.
static int factorial(int n)
{
int i, res; res = 1;
for (i = 1; i <= n; i++)
res = res * i;
return res;
}
static void Main(string[] args)
{
int i;//независимая переменная
for (i = 0; i <= 13;i++)
Console.WriteLine("{0}! = {1}",i,factorial(i));
Console.ReadKey();
}
[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Рисунок 1 - Пример выполнения

Передача типов значений с помощью ссылки
Ключевое слово out используется для передачи аргументов по ссылке. Оно похоже на ключевое слово ref, за исключением того, что ref требует инициализации переменной перед ее передачей. Для работы с параметром out определение метода и вызывающий метод должны явно использовать ключевое слово out. Таким образом, если значение параметра до вызова метода не определено, используют out, если определено используют ref.
Рассмотрим пример подпрограммы ввода, обработки и вывода массива. "Ввести массив, заменить его элементы факториалами, вывести массив".
static void enter(out int[] massiv1)
{
int i, N; string s;
//вводим число элементов
Console.Write("Введите число элементов массива N=");
s = Console.ReadLine();
N = Convert.ToInt32(s);

//создаём массив необходимой длины
massiv1 = new int[N];

//запускаем цикл по всем элементам массива
for (i = 0; i < N; i++)
{
//вводим i-ый элемент
Console.Write("Введите {0}-й элемент массива ", i);
s = Console.ReadLine();
massiv1[i] = Convert.ToInt32(s);
}
}
static void process(ref int[] massiv1)
{
for(int j=0;j< massiv1.Length;j++)
{
int f = 1;
for (int i=2;i<=massiv1[j];i++)
f=f*i;
massiv1[j] = f;
}
}
static void output(int[] mas)
{
Console.WriteLine("Список элементов массива");
foreach (int i in mas)
Console.Write("{0} ", i);
}
static void Main(string[] args)
{
int[] my_massiv;
enter(out my_massiv);
process(ref my_massiv);
output(my_massiv);
Console.ReadKey();
}
[ Cкачайте файл, чтобы посмотреть ссылку ] [ Cкачайте файл, чтобы посмотреть ссылку ]Рисунок 2 - Пример выполнения

При обработке исходного файла считать число элементов в нём неизвестным. Не допускается использование массивов. Для решения задачи предварительно составляется [ Cкачайте файл, чтобы посмотреть ссылку ] .
1 Дан файл целых чисел. Создать новый файл целых чисел, содержащий длины всех серий исходного файла (серией называется набор последовательно расположенных одинаковых элементов, а длиной серии количество этих элементов). Например, для исходного файла с элементами 1, 5, 5, 5, 4, 4, 5 содержимое результирующего файла должно быть следующим: 1, 3, 2, 1.
2 Дан файл вещественных чисел. Создать файл целых чисел, содержащий длины всех убывающих последовательностей элементов исходного файла. Например, для исходного файла с элементами 1.7, 4.5, 3.4, 2.2, 8.5, 1.2 содержимое результирующего файла должно быть следующим: 3, 2. Последовательность не может иметь длину меньше, чем 2.
3 Дан файл целых чисел. Создать два новых файла, первый из которых содержит четные числа из исходного файла, а второй нечетные (в том же порядке). Если четные или нечетные числа в исходном файле отсутствуют, то соответствующий результирующий файл оставить пустым.
4 Дан файл вещественных чисел. Создать файл целых чисел, содержащий номера всех локальных максимумов исходного файла в порядке возрастания (локальным максимумом называется элемент, который больше своих соседей, самый первый и самый последний элементы не могут считаться локальными максимумами).
5 Дан файл вещественных чисел. Создать на его основе новый файл в котором заменить каждый элемент исходного файла, кроме начального и конечного, на его среднее арифметическое с предыдущим и последующим элементом.
6 Дан файл целых чисел. Создать на его основе новый файл, размером в 15 элементов. Если исходный файл имеет размер больший или равный 15 - выбрать из него только первые 15 элементов. Если исходный файл имеет размер меньше, чем 15 - продублировать его элементы до необходимого количества.
7 Дан файл целых чисел. Создать на его основе новый файл в котором выполнить дублирование всех положительных элементов исходного файла.
8 Дан файл целых чисел. Создать на его основе новый файл в котором заменить каждое положительное число на три нулевых элемента.
9 Дан файл целых чисел. Создать на его основе новый файл в котором после каждого из первых трёх наибольших по абсолютной величине чисел вставить элемент со значением ноль.
10 Дан файл целых чисел. Создать на его основе новый файл в которой занести элементы исходного файла, образующие в сумме с двумя соседними чётное число.
Задание №2
Задачи на использование [ Cкачайте файл, чтобы посмотреть ссылку ] . Условие вида "дан файл" означает, что пользователем вводится количество элементов и все элементы файла с клавиатуры. Осуществить ввод данных для файла, выполнить реализацию алгоритма обработки и создания нового файла, обеспечить вывод полученных результатов используя отдельные [ Cкачайте файл, чтобы посмотреть ссылку ] . Для решения задачи предварительно составляется блок-схема.
Отчёт по лабораторной работе
По каждой из решённых задач в отчёте должны быть:
Постановка задачи
Словесное объяснение алгоритма
Блок-схема
Текст программы с комментариями
Не менее десяти тестовых примеров. Один из примеров подтверждается скриншотом исполняемой программы в обязательном порядке.


Лабораторная работа №5
Целью лабораторного занятия является освоение модуля №5 изучаемой дисциплины, приобретение навыков практического применения знаний для создания простейших программ работы с классами.
Задание на лабораторную: В среде [ Cкачайте файл, чтобы посмотреть ссылку ] , решить 2 задачи по вариантам и оформить отчёт.
Задание №1
Задачи на использование классов и объектов, в которых данные описаны в качестве полей. Реализовать класс заданной структуры. В нём предусмотреть конструктор для установки начальных значений полей. Создать объект на основе созданного класса. Осуществить использование объекта в программе.
1. Класс для решения линейного уравнения у=kx+b. Коэффициенты уравнения k, b реализовать с помощью полей вещественного типа. Для решения уравнения предусмотреть метод Root.
2. Элемент ai геометрической прогрессии вычисляется по формуле: ai=a0qi. Реализовать поля a0 и q - вещественного типа. Определить метод Elementi() для вычисления заданного элемента прогрессии.
3. Угол задан с помощью целочисленных полей gradus - градусов, min - угловых минут, sec - угловых секунд. Реализовать класс, в котором предусмотреть метод ToRadians для перевода в радианы.
4. Дата задана с помощью целочисленных полей day , month, year. Предусмотреть метод IsValid, проверяющий возможна ли заданная дата.
5. В классе создать два целочисленных поля a и b. Реализовать метод NOD для нахождения наибольшего общего делителя для a и b.
6.Целочисленные поля a, b, c, являются сторонами некоторого треугольника. Реализовать метод, проверяющий истинность высказывания: «Треугольник со сторонами a, b, c является прямоугольным»
7. Целочисленные поля x и y представляют собой координаты клетки шахматной доски. Учитывая, что левое нижнее поле доски (1, 1) является черным, реализовать метод, проверяющий истинность высказывания: «Данное поле является белым».
8. Поле left - вещественное число, левая граница диапазона. Поле right - вещественное число, правая граница диапазона. Пара этих числе представляет полуоткрытый интервал [left,right). Реализовать класс, в котором предусмотреть методrangecheck() - проверку заданного числа на принадлежность диапазону.
9. Комплексное число (a+jb) в алгебраической форме задано полями a и b с помощью метода Polar получить запись комплексного числа в показательной форме.
10. Время задано тремя целочисленными полями hour, min, sec. Реализовать метод увеличения времени на 1 секунду.
Задание №2
Задачи на использование классов и объектов, в которых данные описаны в качестве свойств. Реализовать класс заданной структуры. В нём предусмотреть конструктор для установки начальных значений полей. Создать объект на основе созданного класса. Осуществить использование объекта в программе.
1. Реализовать класс для нахождения площади треугольника. Вещественные свойства a,b,c - стороны треугольника. Метод Square находит площадь.
2. Реализовать класс для проверки исходных данных. Вещественные свойства a,b,c - стороны треугольника. Метод IsValid проверяет корректность введённых данных.
3. Круг на плоскости имеет координаты центра x0,y0 - вещественные свойства. Радиус круга r0 - также задан вещественным свойством. Реализовать метод проверяющий принадлежность точки с координатами (x,y) данному кругу.
4. Вещественное свойство sum представляет собой сумму вложения под процент. Свойство proc - процентную ставку годовых. Реализовать метод, определяющий сумму через n лет.
5. Шахматный король находится на клетке с координатами (x,y) - целочисленные свойства, которые могут принимать значения от 0 до 8. Реализовать метод, возвращающий все возможные ходы.
6. Шахматный ферзь находится на клетке с координатами (x,y) - целочисленные свойства, которые могут принимать значения от 0 до 8. Реализовать метод, возвращающий число возможных ходов.
7. Реализовать класс для нахождения углов треугольника. Вещественные свойства a,b,c - стороны треугольника. Метод Angles находит углы.
Задание №3
Задачи на наследование классов, в которых данные описаны в качестве свойств. Реализовать базовый класс заданной структуры, на основе него создать наследующий класс. В нём предусмотреть конструктор для установки начальных значений полей. Создать объект на основе созданного класса. Осуществить использование объекта в программе.
1. Создать класс Angle для работы с углами на плоскости. Предусмотреть перевод из градусной меры в радианную, сложение и вычитание углов с учётом приведения к диапазону 0-360. На основе класса Angle создать класс Triangle для работы с прямоугольным треугольником. Предусмотреть нахождение его площади.
2. Создать класс Money представляющий количество банкнот достоинством 10, 50, 100, 500, 1000, 5000. Предусмотреть метод summa, для вычисления общей суммы. На основе класса Money создать класс Bankomat предусматривающий снятие любой возможной суммы, пополнение запаса.
3. Создать класс Money для работы с денежными суммами в котором для рублей и копеек предусмотрены независимые целочисленные данные. Реализовать метод вывода суммы на экран. На основе класса Money создать класс Good для работы с товаром. Предусмотреть метод, осуществляющий уменьшение цены на заданное число процентов.
4. Создать класс Board для описания шахматной доски. В нём предусмотреть массив 8х8 элементов и метод для перевода цифр 1-8 в буквы A-H и обратно. На основе класса Board создать класс Composition для составления шахматной композиции. В нём предусмотреть возможность добавления/удаления фигур на доску, распечатку композиции.
5. Создать класс Points для хранения координат четырёх точек A, B, C и D на плоскости. В классе предусмотреть возможность распечатки координат каждой точки по отдельности и всех разом. На основе класса Points создать классQuadrilateral для работы с четырёхугольником. Предусмотреть методы для проверки существования четырёхугольника, нахождения площади и диагоналей.
Задание №4
Задачи на использование блочных лямбда-выражений. Описать делегат с требуемой сигнатурой. Используя блочное лямбда-выражение реализовать основной алгоритм задачи. Осуществить использование делегата в программе с применением введённых пользователем исходных данных.
1.Введены целые положительные числа A и B, такие, что A > B. На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Используя операцию деления нацело, найти количество отрезков B, размещенных на отрезке AB.
2.Введено трехзначное число. Найти сумму и произведение его цифр.
3.Введено трехзначное число. В нем зачеркнули первую слева цифру и приписали ее справа. Вывести полученное число.
4.Дни недели пронумерованы следующим образом: 1 понедельник, 2 вторник, , 6 суббота, 7 воскресенье. Дано целое число K, лежащее в диапазоне 1–365, и целое число N, лежащее в диапазоне 1–7. Определить номер дня недели для K-го дня года, если известно, что в этом году 1 января было днем недели с номером N.
5.Введены целые положительные числа A, B, C. На прямоугольнике размера A * B размещено максимально возможное количество квадратов со стороной C (без наложений). Найти количество квадратов, размещенных на прямоугольнике, а также площадь незанятой части прямоугольника.
6.Введен некоторый год (целое положительное число). Определить соответствующий ему номер столетия, учитывая, что, к примеру, началом 20 столетия был 1901 год.
Задание №5
Задачи на использование событий. Осуществить использование событий в программе с применением синтаксиса обработчика, рекомендованного для среды .NET Framework.
1. Распечатать номера всех шестизначных "счастливых" билетов. Осуществить перебор всех шестизначных чисел и при нахождении "счастливого" номера активировать событие OnTrivial, в обработчике которого вывести этот номер. После распечатки 10 "счастливых" номеров активировать событие OnFullScreen с ожиданием ввода пользователем выбора на продолжение работы программы с очисткой экрана или завершение работы программы. Номер считается "счастливым", если сумма первых трёх цифр равна сумме последних трёх.
2. Программа для поиска простых чисел в интервале 0..2млрд методом перебора с проверкой. При нахождении очередного простого числа активировать событие OnPrimeNumber, в обработчике которого вывести это число. После распечатки 10 простых чисел активировать событие OnFullScreen с ожиданием ввода пользователем выбора на продолжение работы программы с очисткой экрана или завершение работы программы.
3. Программа для поиска простых чисел среди чисел Фибоначчи. При нахождении очередного простого числа активировать событие OnPrimeNumber, в обработчике которого вывести это число, а также номер этого числа в последовательности Фибоначчи. После распечатки 10 простых чисел активировать событие OnFullScreen с ожиданием ввода пользователем выбора на продолжение работы программы с очисткой экрана или завершение работы программы.
4. Программа для поиска чисел Цукермана. При нахождении очередного числа Цукермана активировать событие OnZuckermanNumber, в обработчике которого вывести это число. После распечатки 10 чисел Цукермана активировать событие OnFullScreen с ожиданием ввода пользователем выбора на продолжение работы программы с очисткой экрана или завершение работы программы. См. [ Cкачайте файл, чтобы посмотреть ссылку ]
5. Программа для поиска натуральных чисел раскладываемых ровно на N простых множителей в интервале 0..2млрд методом перебора с проверкой. При нахождении очередного числа раскладываемого на N простых множителей, активировать событие OnNMultiplier, в обработчике которого вывести это число. После распечатки 10 чисел активировать событие OnFullScreen с ожиданием ввода пользователем выбора на продолжение работы программы с очисткой экрана или завершение работы программы.
Отчёт по лабораторной работе
По каждой из решённых задач в отчёте должны быть:
Постановка задачи
Словесное объяснение алгоритма
Текст программы с комментариями
Не менее десяти тестовых примеров. Один из примеров подтверждается скриншотом исполняемой программы в обязательном порядке.

Выбрать Консольное приложение и задать своё имя проектаРисунок 3Описание: Выбрать Консольное приложение и задать своё имя проекта Свою программу писать внутри Main, для запуска нажать F5 или воспользоваться пиктограммойРисунок 5Описание: Свою программу писать внутри Main, для запуска нажать F5 или воспользоваться пиктограммой Можно указать новое имя проекта и папку для сохранения проектаРисунок 9Описание: Можно указать новое имя проекта и папку для сохранения проекта Открыть проектРисунок 11Описание: Загрузка проекта Файл/Открыть проект Блок-схема для примера 2Рисунок 48Описание: Блок-схема для примера 2Рисунок 53Описание: http://it.fitib.altstu.ru/neud/cs/pictures/external.pngќђ Заголовок 1ќђ Заголовок 2ќђ Заголовок 3ќђ Заголовок 415

Приложенные файлы

  • doc 11080194
    Размер файла: 608 kB Загрузок: 1

Добавить комментарий