Секция контроля (задания для дополнительно контроля) Задание К1. Выполните указанный вариант. (пример приведен ниже) Написать программу, которая подсчитывает: периметр квадрата, площадь которого равна а; Пример: using System; namespace Example { class Program { static void Main() { Console.Write(“s= “); float s = float.Parse(Console.ReadLine()); double p = 4 * Math.Sqrt(s); Console.WriteLine(«p=» + p); } } } 1. площадь равностороннего треугольника, периметр которого равен p; 2. расстояние между точками с координатами a, b и с,d; 3. среднее арифметическое кубов двух данных чисел; 4. среднее геометрическое модулей двух данных чисел; 5. гипотенузу прямоугольного треугольника по двум данным катетам a, b. 6. площадь прямоугольного треугольника по двум катетам a, b. 7. периметр прямоугольного треугольника по двум катетам a, b. 8. ребро куба, площадь полной поверхности которого равна s; 9. ребро куба, объем которого равен v; 10. периметр треугольника, заданного координатами вершин x1, y1, x2, y2, x3, y3; 11. площадь треугольника, заданного координатами вершин x1, y1, x2, y2, x3, y3; 12. радиус окружности, длина которой равна l; 13. радиус окружности, площадь круга которой равна s; 14. площадь равнобедренной трапеции с основаниями a и b и углом a при большем основании; 15. площадь кольца с внутренним радиусом r1 и внешним r2; 16. радиус окружности, вписанной в равносторонний треугольник со стороной а; 17. радиус окружности, описанной около равностороннего треугольника со стороной а; 18. сумму членов арифметической прогрессии, если известен ее первый член, разность и число членов прогрессии; 19. сумму членов геометрической прогрессии, если известен ее первый член, знаменатель и число членов прогрессии. Задание К2. Выберите указанный вариант и реализуйте его (пример приведен ниже) максимальное значение для двух различных вещественных чисел; Пример: using System; namespace Hello { class Program { static void Main() { Console.Write(“a= “); float a = float.Parse(Console.ReadLine()); Console.Write(“b= “); float b = float.Parse(Console.ReadLine()); float max=(a>b)?a:b; Console.WriteLine(«max=» + max); } } } 1. является ли заданное целое число четным; 2. является ли заданное целое число нечетным; 3. если целое число М делится на целое число N, то на экран выводится частное от деления, в противном случае выводится сообщение «M на N нацело не делится»; 4. оканчивается ли данное целое число цифрой 7; 5. имеет ли уравнение ax2+bx+c=0 решение, где a, b, c – данные вещественные числа; 6. какая из цифр двухзначного числа больше: первая или вторая; 7. одинаковы ли цифры данного двухзначного числа; 8. является ли сумма цифр двухзначного числа четной; 9. является ли сумма цифр двухзначного числа нечетной; 10. кратна ли трем сумма цифр двухзначного числа; 11. кратна ли числу А сумма цифр двухзначного числа; 12. какая из цифр трехзначного числа больше: первая или последняя; 13. какая из цифр трехзначного числа больше: первая или вторая; 14. какая из цифр трехзначного числа больше: вторая или последняя; 15. все ли цифры трехзначного числа одинаковые; 16. существует ли треугольник с длинами сторон a, b, c; 17. является ли треугольник с длинами сторон a, b, c прямоугольным; 18. является ли треугольник с длинами сторон a, b, c равнобедренным; 19. является ли треугольник с длинами сторон a, b, c равносторонним. Задание К3. Выполните указанный вариант. I. Дана точка на плоскости с координатами (х, у). Составить программу, которая выдает одно из сообщений «Да», «Нет», «На границе» в зависимости от того, лежит ли точка внутри заштрихованной области, вне заштрихованной области или на ее границе. Пример: 1.  | using System; namespace Hello { class Program { static void Main() { Console.Write(“x=”); float x = float.Parse(Console.ReadLine()); Console.Write(“y=”); float y = float.Parse(Console.ReadLine()); if (x * x + y * y < 9 && y > 0) Console.WriteLine(“внутри”); else if (x * x + y * y > 9 || y < 0) Console.WriteLine(“вне”); else Console.WriteLine(«на границе»); } } } | Области задаются графически следующим образом: 2.  | 3.  | 4.  | | 5.  | 6.  | 7.  | 8.  | 9.  | 10.  | 11.  | 12.  | 13.  | 14.  | 15.  | 16.  | 17.  | 18.  | 19.  | 20.  | Задание К4. Выберите вариант и выполните его. Дан порядковый номер дня недели, вывести на экран его название. Пример: using System; namespace Hello { class Program { static void Main() { Console.Write(“n=”); byte n = byte.Parse(Console.ReadLine()); switch (n) { case 1: Console.WriteLine(“понедельник”); break; case 2: Console.WriteLine(“вторник”); break; case 3: Console.WriteLine(“среда”); break; case 4: Console.WriteLine(“четверг”); break; case 5: Console.WriteLine(“пятница”); break; case 6: Console.WriteLine(“суббота”); break; case 7: Console.WriteLine(“воскресенье”); break; default: Console.WriteLine(“ВЫ ОШИБЛИСЬ”); break; } } } } 1. Дан порядковый номер месяца, вывести на экран количество месяцев оставшихся до конца года. 2. Дан порядковый номер дня месяца, вывести на экран количество дней оставшихся до конца месяца. 3. Дан номер масти m (1 m 4), определить название масти. Масти нумеруются: «пики» - 1, «трефы» - 2, «бубны» - 3, «червы» - 4. 4. Дан номер карты k (6 k 14), определить достоинство карты. Достоинства определяются по следующему правилу: «туз» - 14, «король» - 13, «дама» - 12, «валет» - 11, «десятка» - 10, …, «шестерка» - 6. 5. Дан номер масти m (1 m 4) и номер достоинства карты k (6 k 14). Определить полное название соответствующей карты в виде «дама пик», «шестерка бубен» и т.д. 6. С 1 января 1990 года по некоторый день прошло n дней, определить название текущего месяца. 7. С 1 января 1990 года по некоторый день прошло m месяцев, определить название текущего месяца. 8. С некоторой даты по настоящий день прошло m месяцев, определить название месяца неизвестной даты. 9. С некоторой даты по настоящий день прошло m месяцев, найти неизвестную дату. 10. С некоторой даты по настоящий день прошло n дней, найти неизвестную дату. 11. С 1 января 1990 года по некоторый день прошло m месяцев и n дней, определить название текущего месяца. 12. Дано расписание приемных часов врача. Вывести на экран приемные часы врача в заданный день недели (расписание придумать самостоятельно). 13. Проведен тест, оцениваемый в целочисленный баллах от нуля до ста. Вывести на экран оценку тестируемого в зависимости от набранного количества баллов: от 90 до 100 – «отлично», от 70 до 89 – «хорошо», от 50 до 69 – «удовлетворительно», менее 50 – «неудовлетворительно». 14. Дан год. Вывести на экран название животного, символизирующего заданный год по восточному календарю. 15. Дан возраст человека мужского пола в годах. Вывести на экран возрастную категорию: до года – «младенец», от года до 11 лет – «ребенок», от 12 до 15 лет – «подросток», от 16 до 25 лет – «юноша», от 26 до 70 лет – «мужчина», более 70 лет – «старик». 16. Дан пол человека: м – мужчина, ж – женщина. Вывести на экран возможные мужские и женские имена в зависимости от введенного пола. 17. Дан признак транспортного средства: a – автомобиль, в – велосипед, м - мотоцикл, с – самолет, п – поезд. Вывести на экран максимальную скорость транспортного средства в зависимости от введенного признака. 18. Дан номер телевизионного канала. Вывести на экран наиболее популярные программы заданного канала. 19. Дан признак геометрической фигуры на плоскости: к – круг, п – прямоугольник, т - треугольник. Вывести на экран периметр и площадь заданной фигуры (данные, необходимые для расчетов, запросить у пользователя). Задание К5. Замечание. Решите каждую задачу тремя способами – используя операторы цикла while, do while и for. целые числа 1, 3, 5, …, 21 в строчку через пробел: Пример: using System; namespace Hello { class Program { static void Main() { Console.Write(“n=”); byte n = byte.Parse(Console.ReadLine()); Console.Write(“while: “); int i = 1; while (i <= n) { Console.Write(“ “ + i); i += 2; } Console.Write(“do while: “); i = 1; do { Console.Write(“ “ + i); i += 2; } while (i <= n); Console.Write(“For: “); for (i = 1; i<=n; i+=2) { Console.Write(“ “ + i); } } } } 1. целые числа 10, 12, 14, …, 60 в обратном порядке в столбик; числа следующим образом: 10 10.4 11 11.4 … 25 25.4 | числа следующим образом: 25 25.5 24.8 26 26.5 25.8 … 35 35.5 34.8 | таблицу соответствия между весом в фунтах и весом в килограммах для значений 1, 2, 3, …, 10 фунтов (1 фунтов = 453г); 2. таблицу перевода 5, 10, 15, …, 120 долларов США в рубли по текущему курсу (значение курса вводится с клавиатуры); 3. таблицу стоимости для 10, 20, 30,…, 100 штук товара, при условии, что одна штука товара стоит х руб (значение х водится с клавиатуры); 4. таблицу перевода расстояний в дюймах в сантиметры для значений 2, 4, 6, …, 12 дюймов (1 дюйм = 25.4 мм); 5. кубы всех целых чисел из диапазона от А до В (АВ) в обратном порядке; 6. все целые числа из диапазона от А до В (АВ), оканчивающиеся на цифру Х; 7. все целые числа из диапазона от А до В (АВ), оканчивающиеся на цифру Х или У; 8. все целые числа из диапазона от А до В (АВ), оканчивающиеся на любую четную цифру; 9. только положительные целые числа из диапазона от А до В (АВ); 10. все целые числа из диапазона от А до В, кратные трем (АВ); 11. все четные числа из диапазона от А до В, кратные трем (АВ); 12. только отрицательные четные числа из диапазона от А до В (АВ); 13. все двухзначные числа, в записи которых все цифры разные; 14. все двухзначные числа, в которых старшая цифра отличается от младшей не больше чем на 1; 15. все трехзначные числа, которые начинаются и заканчиваются на одну и ту же цифру; 16. все трехзначные числа, в которых хотя бы две цифры повторяются. Задание К6. Выполнить указанный вариант. Пример: using System; namespace Hello { class Program { static void Main() { for (int i = 1; i<=4; ++i, Console.WriteLine()) { for(int j=1; j<=6; ++j) Console.Write(“ “ + i); } } } } Порядок защиты лабораторной работы: Лабораторная работа состоит из следующих частей: 1. Часть №1. (Задание: выполнить последовательность действий и разобраться в принципах разработки внешних библиотек); 2. Часть№2. (Задание: Разобрать самостоятельно) 3. Задания к Части №2 (Задание: При защите лабораторной работы необходимо обосновать любой из приведенных примеров и решить их) 4. Часть №3 (Задание: Разобрать самостоятельно) 5. Задания к Части №3. (Задание: При защите лабораторной работы необходимо обосновать любой из приведенных примеров и решить их) 6. Секция домашнего задания 7. Секция контроля знаний Пункты 2,4 представляют собой описательно-справочную информацию по основным операциям и операторам языка. В случае раннего изучения С подобных языков рекомендуется перейти к пунктам 3 и 5, которые должны выполняться в аудитории с преподавателем. В случае трудностей с выполнением заданий следует вернуться к теоретической части (пункты 2 и 4). Пункт №5 выполняется самостоятельно вне практического занятия. Порядок оценки лабораторной работы: Базовая оценка 15 баллов выставляется за верные ответы на 3 любых (на выбор преподавателя) задания из пунктов 1, 3 и 5. (устно) Домашнее заданиеоформляетсякак дополнение к лекциям (письменно) и оценивается в 15 баллов. (каждый пункт оформляется как отдельный dll и тестовый пример) Дополнительные 15 балловможно получить за любые 3 задания из разных Секций К, пункта 6. (задания в пределах группы не должны повторяться). Задания оформляются в виде отдельных dll и тестового примера. И еще 15 баллов завыполненное задание выбранное преподавателем из секции 6 за 15 минут. (в виде dll и тестового примера) |