ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Использование составного оператораЕсли по смыслу задачи, в зависимости от условий, надо выполнять либо одну, либо другую группу операторов, то их надо их надо превратить в один составной оператор (заключить в операторные скобки): Begin операторы; End; If Q Then Begin A1; A2; : An; End Else Begin B1; B2; : Bn; End; Задача 2: Даны 2 различных числа. Вычислить x=(y+z)2; - где y=max*2; z=max/min; Решение: Program Vet2; Var A,C,Max,Y:Integer; Z,X:Real; Begin Writeln(’Введите 2 различных числа’); Readln(A,C); If A>C Then Begin Y:=A*2; Z:=A/C; End Else Begin Y:=C*2; Z:=C/A; End; X:=SQR(Y+Z); Write(’X = ’,X); End. Задача 3. Даны числа A, C. Решить линейное уравнение A*X=C с полным анализом. Решение: Program Vet3; Var A,C,X:Real; Begin Writeln(’Введите 2 числа’); Readln(A,C); If A=0 Then If B=0 Then Writeln(’X -любое’) Else Writeln(’Решений нет’) Else Begin X:=C/A; Writeln(’X=’,X); End; End. Задачи: 1. Даны X,Y (Х<>Y). Меньшее из этих двух чисел заменить полусуммой, а большее их удвоенным произведением 2. Даны числа A, B, C. Решить уравнение AX2+BX+C=0 с полным анализом. 3. Даны 3 числа. Найти разность большего и меньшего из этих чисел 4. Если сумма трех различных чисел X,Y,Z меньше единицы, то меньшее из X,Y заменить полусуммой Y и Z, иначе большее из X и Y заменить произведением Х*Y.
6.3.Использование составных логических условий (связки “и”; “или”). При записи составных логических условий следует помнить порядок выполнения операций. Задача 3. Даны числа X,Y,Z. Проверить, можно ли построить треугольник с данными сторонами. Решение: Program Vet3; Var X,Y,Z:Integer; Begin Writeln(’Введите 3 числа’); Readln(X,Y,Z); If (X+Y>Z) and (X+Z>Y) and (Y+Z>X) Then Writeln(’Треугольник существует.’) Else Writeln(’Треугольник не существует.’); End. Задачи 1. Даны числа А, В, С. Определить есть ли среди них отрицательные числа. 2. По введенной температуре определить здоров человек или болен. 3. Даны числа А, В, С. Определить какое из чисел лежит между двумя другими 4. Даны числа А, В, С. Вывести их на экран упорядоченными по возрастанию. 5. Дана точка M(X,Y). Определить, лежит ли данная точка внутри области D: a) у б) у в) у г) у y=x 2 D 2 х -2 2 х -3 2 х х D D -2 D
д) у у=х2 е) у ж) у з) у 2 D х 2 х -2 2 х х D D -2 D
Оператор варианта Case B of <список меток 1>:S1; <список меток 2>:S2; : <список меток n>:Sn; [Else S;] End; S1, S2,…, Sn – любые операторы в единственном числе; B – выражение, дающее значение порядкового типа, оно называется переключателем; <список меток n> - это перечень констант того же типа, что и значение переключателя B. Разделяются запятой или (..). Примеры: 1..50; 1,2,4; ’a’,’d’; Выполняется: 1. Вычисляется значение переключателя B; 2. Отыскивается список меток, включающий это значение и выполняется соответствующий оператор; 3. Если значение переключателя не входит ни в один из списков меток, то в случае полной формы операторa Case, выполняется оператор S, а в случае неполной формы управление передается следующему оператору программы. Здесь перед Else (;) ставится. Задача 4: По номеру дня недели вывести соответствующее ему название. Решение: Program Vet4; Var Z:Integer; Begin Writeln(’Введите номер дня недели’); Readln(Z); Case Z of 1:Writeln(’Понедельник’); 2:Writeln(’Вторник’); 3:Writeln(’Среда’); 4:Writeln(’Четверг’); 5:Writeln(’Пятница’); 6:Writeln(’Суббота’); 7:Writeln(’Воскресенье’); Else Writeln(’Дня с таким номером не существует.’); End; End. Задача 5: По заданному символу определить, является ли он цифрой, латинской буквой или другим знаком. Решение: Program Vet5; Var Z:Char; Begin Writeln(’Введите символ’); Readln(Z); Case Z of ’1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’,’0’:Writeln(’Символ - цифра’); ’a’..’z’:Writeln(’Символ – латинская буква’); Else Writeln(’Другой знак.’); End; End. Задачи: 1. Определить по введенному номеру месяца, количество дней в нем. 2. Определить, принадлежит ли введенное целое число к десяткам, сотням или тысячам. 3. По номеру квартала определить принадлежащие ему названия месяцев. 4. По номеру четверти координатной плоскости вывести знаки Х и У.
Оператор перехода Оператор перехода имеет вид: Goto M; M- метка. Все метки должны быть описаны в разделе описания меток; В рассмотренных выше программах операторы выполнялись в том порядке, в каком они были записаны. Изменить этот порядок можно с помощью оператора перехода. Он прерывает естественную последовательность операторов: следом за ним выполняется оператор, помеченный указанной меткой. Оператор Goto Met; передает управление на оператор с меткой Met. Пусть программа содержит последовательность операторов: X:=2; A:=X; Goto Met; 1:A:=A*2; B:=A; Met:Writeln(B); В этом случае сначала выполняются операторы X:=2; A:=X; затем следует переход к оператору, помеченному меткой Met т.е. к оператору Writeln(B); Задача 6. Даны 3 отрицательных числа. Найти предыдущее и следующее значение максимального из этих чисел. Решение: Program Vet6; Label 1; Var A,B,C:Integer; Begin 1:Writeln(’Введите отрицательные числа’); Readln(A,B,C); If (A>0) or (B>0) or (C>0) Then Goto 1; {далее задачу решаем самостоятельно} End; Не нашли, что искали? Воспользуйтесь поиском:
|