Foreversoft.ru

IT Справочник
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Паскаль 21 условные операторы

Паскаль 21 условные операторы

В Паскале разветвляющиеся алгоритмы позволяет реализовать условный оператор. Условный оператор позволяет проверить некоторое логическое выражение и в зависимости от результатов проверки выполнить то или иное действие.
Структура условного оператора в полной форме имеет следующий вид:

IF (логическое выражение) THEN (оператор1) ELSE (оператор2);

Вначале вычисляется значение логического выражения, если результат — TRUE (истина), то выполняется оператор1, если результат есть FALSE (ложь), наоборот, выполняется оператор2.

Блок-схема условного оператора в полной форме:

В условном операторе после then, а также после else по синтаксису может стоять только один оператор. Если же при выполнении (или невыполнении)логического выражения надо выполнить не одно действие, а несколько, то их надо объединить в единый, составной оператор, т.е. заключить эту последовательность действий в операторные скобки.
Составной оператор имеет вид:

Блок-схема:

Программный код:
Var a,b,y:integer;
begin
if ( a > b ) then y := a else y := b ;
end.

Структура условного оператора в неполной форме имеет следующий вид:

IF (условие) THEN (оператор);

Вычисляется значение логического выражения, если оно имеет значение true , то выполняется оператор, записанный после then , если же значение ложно ( false ), то выполнение условного оператора завершается.

Пример:
if ( x >-5) and ( x then writeln (‘ no ’);

В качестве операторов после служебных слов then и else в условном операторе можно использовать другие условные операторы. Такой оператор называется вложенной конструкцией условного оператора. При вложенных конструкциях условного оператора могут возникнуть неоднозначности в понимании того, к какой из вложенных конструкций условного оператора относится else . Компилятор Паскаля всегда считает, что else относится к последней из конструкций условного оператора, в котором не было раздела else . Говорят, что else относится к ближайшему then .
В условном операторе вида:

If A then
If B then оператор 1
else оператор 2

A и B – логические выражения.
Проверяется значение логического выражения A , если оно истинно, то выполняется условный оператор в полной форме If B then оператор1 else оператор2. Если же значение ложно, то условный оператор не выполняется.
Если в условном операторе в полной форме после служебного слова then нужен условный оператор в сокращенной форме, то необходимо записать:

If A then begin
If B then оператор 1 end
else оператор 2

Пример 1:
Программа должна определять, ввел пользователь четное или нечетное число, и выводить на экран сообщение.

Блок-схема:

Программный код на языке Pascal:
var n: integer;
begin
write (‘ Введите целое число : ‘);
readln (n); //ввод переменной
if n mod 2 = 0 then //определяется четность
write (‘Оно четное’) //если выполняется условие четности выводится сообщение «Оно четное»
else
write (‘Оно нечетное’); //если не выполняется условие четности выводится сообщение «Оно нечетное»
readln
end

Пример 2:
Даны два числа, найти наибольшее.

Блок-схема:

Программный код на языке Pascal:
var a,b,c: integer;
begin
write (‘ Введите целые числа : ‘);
readln (a,b); //ввод переменных
if (a>b) then c:=a else c:=b // проверка наибольшего
write (‘Наибольшее число=’, c) //вывод с
readln
end .

1. Даны 3 числа a, b, c. Если a кратно b, то найти сумму всех чисел, если не кратно, то произведение.
2. Даны 3 числа a, b, c, вывести их в порядке возрастания.
3. Даны 3 действительных числа, увеличить на 10 те из них, которые неотрицательны.
4. Даны 5 чисел, найти сумму четных.
5. Даны 2 числа. Если их произведение отрицательно, умножить его на –2 и вывести, в противном случае увеличить его в 1,5 раза и вывести.
6. Даны два числа, вычесть из большего меньшее.
7. Даны три действительных числа. Возвести в квадрат те из них, значе­ния которых неотрицательны.
8. Даны три числа a, b, c. Найти максимальное среди чисел.
9. Даны три числа a, b, c. Найти минимальное среди чисел.
10. Найти решение квадратного уравнения -7x 2 +6x+5=0.
11. Найти решение квадратного уравнения 2x 2 +12x+4=0.
12. Даны x , у. Если x и у отрицательны, то каждое значение заменить его модулем; если отрицательно только одно из них, то оба значения увеличить на 0,5; если оба значения неотрицательны, то оба значения увеличить в 10 раз.
1 3. Определить лежит ли точка с указанными координатами X, Y на окружности радиуса R с центром в начале координат.
14. Выяснить, находится ли точка Н( x , у) в кругу радиуса r с центром в точке с координатами а, b .
15. Определить пройдет ли график функции y=5x 2 -7x+2 через заданную точку с координатами (а,b).
16. Даны три числа a, b, c. Определить принадлежат ли они отрезку [d, f].
1 7. Два прямоугольника заданы длинами сторон. Определить, можно ли первый прямоугольник целиком разместить во втором.
1 8. Определить, пройдет ли кирпич с рёбрами a, b, c в прямоугольное отверстие со сторонами x и y. Просовывать кирпич в отверстие разрешается только так, чтобы каждое из его рёбер было параллельно или перпендикулярно каждой из сторон отверстия.
19. Напряжение более 36 вольт считается опасным. По участку цепи сопротивлением R протекает ток I. Составить программу и блок-схему, которая выводит сообщение «Опасно», если напряжение превышает допустимое, в противном случае «Не опасно». (U=I*R)
20. Даны стороны 2 треугольников: a, b, c и d, e, f. Проверить имеют ли эти треугольники равные площади.
21. Составить программу, которая спрашивает возраст человека и, если ему 18 лет и больше, сообщает “Замечательно. Вы уже можете водить автомобиль”, а в противном случае – “К сожалению, водить автомобиль Вам рановато”.
22. В школу танцев принимаются юноши и девушки, имеющие рост не ниже 168 см и не выше 178 см . Их вес должен соотноситься с ростом по формуле: ВЕС 23. Определить, принадлежит ли точка с заданными координатами (х, у) фигуре Q , если координаты любой точки области Q удовлетворяют неравенствам: y >= x * x -2 и y x * x . Составить программу и блок-схему.

Упражнения «Программирование разветвляющихся алгоритмов»

1. Записать условие, которое является истинным, когда

· каждое из чисел X и Y нечетное;

· только одно из чисел X и Y меньше 20;

· хотя бы одно из чисел X и Y равно нулю;

· каждое из чисел X , F , Z отрицательное;

· только одно из чисел X , Y и Z кратно пяти;

· хотя бы одно из чисел X , К, Z больше 100.

2. Записать условие, которое является истинным, когда

· каждое из чисел А и В больше 100;

· только одно из чисел А и В четное;

· хотя бы одно из чисел А и В положительно;

· каждое из чисел А, В, С кратно трем;

· только одно из чисел А, В и С меньше 50;

· хотя бы одно из чисел А, В, С отрицательно.

3. Записать условие, которое является истинным, когда

1. целое А кратно двум или трем;

2. целое А не кратно трем и оканчивается нулем.

4. Записать условие, которое является истинным, когда

1. целое N кратно пяти или семи;

2. целое N кратно четырем и не оканчивается нулем.

5. Определите значение переменной С после выполнения фрагмента программы:

if А>В then С:=А+В else С:=А-В;

а) 100 b) 5 с) 105 d)95

6. Укажите правильную запись на языке Паскаль выражения, записанного на русском языке Х>=0 и Х>=3,25 и У

Pascal-Паскаль

Программирование. Условные операторы Pascal-Паскаль

  • Скачено бесплатно: 9293
  • Куплено: 414
  • Pascal-Паскаль->Программирование. Условные операторы Pascal-Паскаль

Программирование. Условные операторы Pascal-Паскаль

Условные операторы Pascal-Паскаль

Условные операторы позволяют выбирать для выполнения те или иные части программы в зависимости от некоторых условий. Если, например, в программе используются вещественные переменные x и z, и на каком-то этапе решения задачи требуется вычислить z=max(x, y), то желаемый результат получается в результате выполнения либо оператора присваивания z:=x, либо оператора присваивания z:=y. Поскольку значения переменных x и y заранее неизвестны, а определяются в процессе вычислений, то в программе необходимо предусмотреть оба эти оператора присваивания. Однако на самом деле должен выполниться один из них. Поэтому в программе должно содержаться указание о том, в каком случае надо выбирать для исполнения тот или иной оператор присваивания.

Это указание естественно сформулировать с использованием отношения x>y. Если это отношение при текущих значениях x и y справедливо (принимает значение true), то для исполнения должен выбираться оператор z:=x; в противном случае для исполнения должен выбираться оператор z:=y (при x=y безразлично, какой оператор выполнять, так что выполнение оператора z:=y в этом случае даст правильный результат).

Для задания подобного рода разветвляющихся вычислительных процессов в языках программирования существуют условные операторы. Рассмотрим полный условный оператор Паскаля:

Здесь if (если), then (то) и else (иначе) являются служебными словами, В – логическое выражение, а S1 и S2 – операторы.

Выполнение такого условного оператора в Паскале сводится к выполнению одного из входящих в него операторов S1 или S2: если заданное в операторе условие выполняется (логическое выражение В принимает значение true), то выполняется оператор S1, в противном случае выполняется оператор S2.

Алгоритм решения упомянутой выше задачи вычисления z= max( x, y) можно задать в виде условного оператора Паскаля

При формулировании алгоритмов весьма типичной является такая ситуация, когда на определенном этапе вычислительного процесса какие-либо действия надо выполнить только при выполнении некоторого условия, а если это условие не выполняется, то на данном этапе вообще не нужно выполнять никаких действий. Простейшим примером такой ситуации является замена текущего значения переменной х на абсолютную величину этого значения: если x =0, то текущее значение х должно остаться без изменений, т.е. на данном этапе вообще не надо выполнять каких-либо действий.

В подобных ситуациях удобна сокращенная форма записи условного оператора в Паскале:

Правило выполнения сокращенного условного оператора Паскаля достаточно очевидно: если значение логического выражения В есть true, то выполняется оператор S; в противном случае никаких иных действий не производится.

В языке программирования Паскаль в условном операторе между then и else, а также после else по синтаксису может стоять только один оператор. Если же при выполнении (или невыполнении) заданного условия надо выполнить некоторую последовательность действий, то их надо объединить в единый, составной оператор, т.е. заключить эту последовательность действий в операторные скобки begin. end (это важно!). Если, например, при x of

[else ] end

Здесь case, of, else, end – зарезервированные слова (случай, из, иначе, конец);

  • — выражение порядкового типа;
  • — одна или более конструкций вида:
    • : ;
  • — константа того же типа, что и выражение
    • ;

— произвольные операторы Паскаля.

Оператор выбора Паскаля работает следующим образом. Вначале вычисляется значение выражения , а затем в последовательности отыскивается константа, равная вычисленному значению. Выполняется оператор, который следует за найденной константой, после чего оператор выбора завершает работу. Если в списке выбора не будет найдена константа, соответствующая вычисленному значению ключа выбора, управление передается операторам, стоящим за словом else. Часть else можно опустить, тогда при отсутствии в списке выбора нужной константы не будет выполнено никаких действий, и оператор выбора просто завершит свою работу.

Например, составим программу, которая по номеру дня недели выводит на экран его название:

Пример программы с использованием Case of

Следует помнить, что все константы из списка выбора должны быть различны.

Любому из операторов списка выбора может предшествовать не одна, а несколько констант выбора, разделенных запятыми. Например, следующая программа при вводе одного из символов ‘ y’ или ‘ Y’ выведет на экран «Да», а при вводе ‘ n’ или ‘ N’ – слово «Нет».

Пример программы с использованием Case of с несколькими переменными

Очевидно, что рассмотренные выше программы можно записать с помощью вложенных или последовательно расположенных условных операторов, но в подобных задачах использование оператора выбора является более простым. Основное отличие условного оператора от оператора выбора состоит в том, что в условном операторе условия проверяются одно за другим, а в операторе выбора значение ключа выбора непосредственно определяет одну из возможностей.

Программирование

Исходники Pascal (127)

Справочник

Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту

лабы по информатике, егэ

лабораторные работы и задачи по программированию и информатике, егэ по информатике

Pascal: Занятие №2. Часть 1: Условный оператор в Паскале (If)

Условный оператор в Паскале

До рассмотрения данной темы в основном использовались линейные алгоритмы в Паскале, характерные для весьма простых задач, когда действия (операторы) выполняются последовательно, одно за другим. Более сложные алгоритмы предусматривают использование конструкция ветвления.

Блок-схема условного оператора:

Условный оператор в Паскале имеет следующий синтаксис:

if условие then оператор;

Полный вариант:

if условие then оператор else оператор;

Условный оператор в Паскале — if — служит для организации хода задачи таким образом, при котором изменяется последовательность выполнения операторов в зависимости от какого-либо логического условия. Логическое условие может принимать одно из двух значений: либо true (истина), либо false (ложь), соответственно, оно может быть либо истинным, либо ложным.

Составной оператор

Если при истинном условии необходимо выполнять несколько операторов, то их по правилам языка Pascal необходимо заключать в блок, начинающийся со служебного слова begin и заканчивающегося служебным словом end . Такой блок принято называть операторными скобками, а данную конструкцию — составным оператором:

Операторные скобки и составной оператор в Паскале:

if логическое выражение then begin оператор1; оператор2; end else begin оператор1; оператор2; end;

Перевод с английского оператора условия облегчит понимание его использования:


В условии (в логическом выражении) используются операторы отношения.
Рассмотрим список операторов отношения Паскаля:

  • больше >
  • меньше
  • больше или равно в Pascal >=
  • меньше либо равно в Pascal
  • сравнение в Pascal =
  • не равно в Pascal <>
Вариант 1Вариант 2

Подробно разобраться в работе условного оператора в Паскале можно, просмотрев видеоурок:

Обратите внимание на то, как в данном примере выводится y . При выводе переменных типа real в pascal, можно использовать так называемый форматированный вывод, или запись с двумя двоеточиями:
y:6:2
— цифра после первого двоеточия ( 6 ) указывает на то, сколько знаков будет занимать число при выводе на экран
— цифра после второго двоеточия ( 2 ) указывает на то, сколько знаков после запятой вещественного числа будет выводиться

Таким образом, использование такой записи в pascal практически позволяет выполнить округление до сотых, тысячных и т.п.

Логические операции в Паскале (в логическом выражении)

Когда необходимо использовать двойное условие в Pascal, то понадобятся логические операции.

  • Логическая операция AND (И), поставленная между двумя условиями, говорит о том, что должны выполняться сразу оба эти условия (должны быть истинными). Логический смысл операции — «конъюнкция».
  • Поставленный между двумя условиями, знак OR (ИЛИ) говорит о том, что достаточно, если будет выполняться хотя бы одно из них (одно из двух условий истинно). Логический смысл операции — «дизъюнкция».
  • На языке Паскаль XOR — знак логической операции, имеющий смысл «строгая дизъюнкция» и указывающий на то, что необходимо, чтобы одно из двух условий выполнялось (истинно), а другое — не выполнялось (ложно).
  • Логическая операция NOT перед логическим выражением или переменной имеет смысл «отрицание» или «инверсия» и указывает на то, что если данная переменная или выражение истинны, то их отрицание — ложь и наоборот.

var n:integer; begin n:=6; if (n>5) and (n 7) or (n 7) xor (n 7) then writeln(‘истина’); end.

Вариант 1Вариант 2

var a,b: integer; begin write(‘Введите A: ‘); read(a); b := a mod 2; if b>0 then writeln(‘true’) else writeln (‘false’) end.

Построение блок-схем по коду Паскаль

Теперь настало время вспомнить о том, что такое блок-схемы.
Блок схема — ориентированный граф, указывающий на последовательность операций, приводящую к решению поставленной задачи.

Существуют управляющие структуры трех типов:

следованиеветвлениеповторение или цикл

Две из трех представленных структур блок-схемы мы уже можем перевести в код Pascal.

Результат:

Контрольный проверочный тест по теме «Условные операторы Паскаля»

Как организовать дистанционное обучение во время карантина?

Помогает проект «Инфоурок»

Контрольный проверочный тест по теме

«Условные операторы Паскаля»

1. Служебное слово VAR в программе на языке Pascal фиксирует начало раздела программы, содержащего:

В) описание сложных типов данных;

Г) перечень констант;

Д) описание переменных.

2. В алфавит языка Pascal не входит служебное слово:

А ) THEN; Б ) BEGIN; В ) END; Г ) STEP; Д ) IF.

3. Числа в языке Pascal различаются:

А) как натуральные и целые;

Б) как целые и вещественные;

В) как натуральные и вещественные;

Г) как целые и иррациональные;

Д) как целые и рациональные.

4. Оператор организации ввода данных с клавиатуры в системе программирования Turbo Pascal записывается с использованием служебного слова:

А ) WRITE; Б ) INPUT; В ) READ; Г ) DEFFN; Д ) RESET.

5. Комментарий к тексту программы на языке Pascal заключается:

А) в фигурные скобки;

Б) в круглые скобки;

В) в квадратные скобки;

Д) между служебными словами Begin, End.

6. Служебное слово BEGIN в программе на языке Pascal фиксирует начало раздела программы, содержащего:

А) перечень констант;

Б) действия программы;

В) описание переменных;

Д) описание сложных типов данных.

7. При записи оператора вывода на языке Pascal используется служебное слово:

А ) WRITE; Б ) RESET;

В ) READ; Г ) BEGIN; Д ) WHILE

8. В качестве имени в языке Pascal нельзя использовать:

А) BR; Б) ИЕ; В) WR; Г) AR; Д) DR.

9. Операторы в программе на языке Pascal отделяются друг от друга:

А) апострофом; Б) двоеточием;

В) пробелом; Г) запятой; Д) точкой с запятой.

10. Дана программа :

If X MOD 2=0 Then Writeln(‘ ДА ’)

При каком значении X будет получен ответ “ДА”?

А) 7; Б) 4; В) 15; Г) 3; Д) 21.

11. В каком из условных операторов допущена синтаксическая ошибка?

а) if B = 0 then Writeln (‘Деление на нуль невозможно.’);

б ) if a > b then m:= a else m:= b;

в ) if a>b then c:=a+b; г ) if a

12. Чему будет равно значение переменной Х после выполнения команды Х:=Х+2, если до ее выполнения оно было равно 3?

а) 1; б) 2; в) 3; г) 5.

13. При каких исходных значениях переменных Х и У в результате выполнения команды Х:=Х^Y – Y значение переменной Х станет равным двум?

а) 4, 1; б) 3, 2; в) 2,2; г) 5, 1.

14. Операторы в языке Pascal отделяются друг от друга:

а) двоеточием; б) точкой с запятой; в) запятой; г) пробелом.

1 5. Что из ниже перечисленного не входит в набор основных символов Турбо Паскаля?

а) латинские строчные и прописные буквы

б) служебные слова

в) десять цифр г) русские строчные и прописные буквы

16. В алфавит языка Pascal входит следующее слово:

а ) bigin; б ) begin; в ) begun.

17. Операторные скобки на языке Pascal заключается:

а) в круглые скобки;

б) в фигурные скобки;

в) в квадратные скобки;

г) между служебными словами begin и end .

18. Какое значение примет переменная X после выполнения операторов:

If x<>2 then x:=x*3 else x:=5+x;

19. Определите значение переменной c после выполнения следующего фрагмента программы:

20. Определите значение переменной c после выполнения следующего фрагмента программы:

21 . Дан алгоритм :

if x>10 then y = x ;

Какое число будет выведено в результате выполнения алгоритма, если ввести значение X = -22?

22. Какие из приведенных ниже операторов являются правильными?

Выберите несколько из 5 вариантов ответа:

1) IF 5 THEN S:=S+5;

3) IF K<>M THEN K:=M;

4) IF X AND Y THEN S:=S+1; ELSE S:=S-1;

5) IF (A=B) AND (P=0) THEN P:=P+10.5

23. Какая задача решается при выполнении оператора?

1) меняются местами значения переменных

2) меняется значение наименьшего числа

3) поиск наибольшего значения из двух

4) поиск наименьшего значения из двух

24. Написать программу на компьютере и сохранить под своей фамилией

д. Дано двухзначное число. Определить входят ли в него цифры 4 или 7.

м. Программа сообщает, сдал студент экзамен или нет. Если оценка 3, 4, 5 — то экзамен сдан; если оценка 2, то не сдан.

3*. Грузовой автомобиль выехал из одного города в другой со скоростью v1 км/ч. Через t ч в этом же направлении выехал легковой автомобиль со скоростью v2 км/ч. Составить программу, определяющую, догонит ли легковой автомобиль грузовой через t1 ч после своего выезда.

Бесплатный
Дистанционный конкурс «Стоп коронавирус»

  • Цыганок Елена ИвановнаНаписать 4719 21.11.2015

Номер материала: ДВ-175453

Добавляйте авторские материалы и получите призы от Инфоурок

Еженедельный призовой фонд 100 000 Р

    21.11.2015 872
    21.11.2015 4172
    21.11.2015 522
    21.11.2015 606
    21.11.2015 634
    21.11.2015 460
    21.11.2015 460

Не нашли то что искали?

Вам будут интересны эти курсы:

Все материалы, размещенные на сайте, созданы авторами сайта либо размещены пользователями сайта и представлены на сайте исключительно для ознакомления. Авторские права на материалы принадлежат их законным авторам. Частичное или полное копирование материалов сайта без письменного разрешения администрации сайта запрещено! Мнение редакции может не совпадать с точкой зрения авторов.

Ответственность за разрешение любых спорных моментов, касающихся самих материалов и их содержания, берут на себя пользователи, разместившие материал на сайте. Однако редакция сайта готова оказать всяческую поддержку в решении любых вопросов связанных с работой и содержанием сайта. Если Вы заметили, что на данном сайте незаконно используются материалы, сообщите об этом администрации сайта через форму обратной связи.

Читать еще:  Puts в си это
Ссылка на основную публикацию
Adblock
detector