Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Программирование алгоритмов разветвляющейся структуры
Цель работы: Разработка программ, реализующих разветвления, с помощью условных операторов и переключателей. Алгоритм разветвляющегося вычислительного процесса – алгоритм, в котором в зависимости от значений некоторого признака производится выбор одного из нескольких направлений, называемых ветвями. В основе организации разветвления лежит проверка логического условия, которое может быть истинно или ложно. Частный случай логического условия – это операция типа =, ≠, >, <, ≥, ≤..
Рис.5.3. Развилка «Если…, то…, иначе» Рис.5.4. Развилка «Если…, то»
В свою очередь, в ветвях могут быть проверки других условий, в появившихся новых ветвях – еще проверки условий и т. д. Это приводит к сложным разветвлениям вычислительного процесса на множество направлений.
Задание № 1. Построить алгоритм определения квадранта декартовой системы, в котором находится точка с координатами X, Y. Разработать, набрать и отладить программу на языке Паскаль, реализующую этот алгоритм.
Методика выполнения работы 1. Алгоритм в виде блок-схемы:
Рис.5.5. Блок-схема определения номера квадранта
2. Программа на основе алгоритма рис.5.5:
Program Kvadrant; Uses crt; Label 1; Var x,y:Real; n:Integer; Begin Clrscr; {Ввод исходных данных} Writeln (‘Введите координаты точки: x, y ’); Readln (x, y); {Анализ расположения точки и определение квадранта} n:=1; If (x>0) and (y<0) Then Begin n:=4;Goto 1 End Else If (x<0) and (y<0) Then Begin n:=3;Goto 1 End Else If (x<0) and (y>0) Then Begin n:=2; Goto 1 End; {Вывод результата расчета} 1: Writeln (‘Номер квадранта = ’, n) End. 3. Наберите, откомпилируйте и исправьте возможные ошибки. Затем запустите программу на счет. 4. Проведите тестовые расчеты так, чтобы проработали все разветвления программы. Проанализируйте полученные результаты.
Задание № 2. Разработать алгоритм, имитирующий работу калькулятора. После ввода двух чисел и символа арифметической операции над числами должно производиться соответствующее действие и результат выводиться на экран. Признаком конца работы является ввод любого символа, отличного от ‘+’, ‘-‘, ‘*’ или ’/’.
Разработать, набрать и отладить программу, реализующую этот алгоритм.
Методика выполнения работы 1. Алгоритм в виде блок-схемы:
Рис. 5.6. Блок схема алгоритма работы калькулятора
2. Программа на основе алгоритма рис.5.6:
Program Kalculator; Uses crt; Var x,y,z:Real; oper:Char; stop:Boolean; {Признак конца работы} Begin Clrscr; stop:=False; Repeat {Оператор цикла} Writeln; {Пустая строка - разделитель} Write (‘Введите x и y ’); Readln(x,y); Write(‘ Операция:’); Readln(oper); Case oper Of {Переключатель – оператор выбора Case } ‘+’:z:=x+y; ‘-’:z:=x-y; ‘*’:z:=x*y; ‘/’:z:=x/y; Else stop:=True; End; { Конец оператора Case } If Not stop Then Writeln(x:5:2,oper,y:5:2,’=’,z:5:2); Until stop; { Конец оператора Repeat } Writeln(‘ Конец работы ’) End. 3. Наберите, откомпилируйте и исправьте возможные ошибки. Затем запустите программу на счет. 4. Проведите тестовые расчеты так, чтобы проработали все разветвления программы. Убедитесь в правильности работы программы. В противном случае исправьте ошибки в алгоритме. Задания для самостоятельной работы Разработать алгоритм в виде блок-схемы, составить программу на языке Паскаль.
Вариант 1.1 Даны три различных натуральных числа. Найти их медиану (то из них, которое не является ни максимумом, ни минимумом). Вариант 1.2 , Значение ‘ b ’ вводится с клавиатуры.
Вариант 1.3 Заданы три различных числа. Найти наибольшее из них.
Вариант 1.4
Значение ‘ y ’ вводится с клавиатуры. Вариант 1.5 С клавиатуры вводится натуральное число. С использованием функции ODD(x) определить четное оно или нечетное.
Вариант 2.1 С клавиатуры вводится буква латинского алфавита, используемая в римской системе счисления. Вывести на экран эквивалентное ей арабское число: I - 1; L - 50; D - 500; V - 5; C - 100; M - 1000. X - 10;
Признаком конца работы является ввод любого символа, отличного от перечисленных букв.
Вариант 2.2
С клавиатуры вводится число от 1 до 7. Вывести на экран соответствующий ему день недели: понедельник, вторник, среда, четверг, пятница, суббота, воскресенье. Признаком конца работы является ввод любого символа, отличного от перечисленных чисел.
Вариант 2.3 С клавиатуры вводится произвольный символ. Если это буква от A до Z, то вывести ее на экран с надписью буква, если это число от 0 до 9, вывести его с надписью число, если это разделитель ‘. ’, ‘, ’, ’; ’, ’: ’, вывести его с надписью – разделитель. Признаком конца работы является ввод любого символа, отличного от перечисленных символов.
Вариант 2.4
Вариант 2.5
Лабораторная работа № 4
|
||||||
Последнее изменение этой страницы: 2021-11-27; просмотров: 100; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.156.179 (0.012 с.) |