Организация программ разветвляющейся структуры. Условный оператор
Для записи на языке Паскаль разветвляющихся алгоритмов используется условный оператор Полная (расширенная)форма оператора IF If логическое выражение Then оператор 1 Else оператор 2; Пример: If A
Вторая серия команд в условном операторе может отсутствовать. При этом признак ее начала – служебное слово Else – опускается. Неполная команда ветвления выглядит так: If условие Then действие; Здесь при справедливости условия выполняется действие, а если условие нарушено, то сразу переходим к оператору, который следует за условным оператором.
Пример. Составьте программу, удваивающую значение целой переменной а, если а>5. Program Pr2; Var а : Integer; Begin WriteLn (Введите число); ReadLn (а); If а >5 Then а := а*2; WriteLn (а =', а); End.
Подчеркнутые строки выполняются вне зависимости от того, какие числа вы ввели. Такая ошибка связана с тем, что после ключевого слова Then в условном операторе If выполняется только одна команда, стоящая после него. Остальные же строки выполняются вне зависимости от условных операторов, стоящих перед ними. Использование нескольких команд после слов Then и Else
Чтобы после ключевых слов Then или Else могла выполняться последовательность операторов, они должны быть заключены в операторные скобки – ключевые слова Begin и End. Операторные скобки охватывают фрагмент исходного текста программы, который необходимо считать одним оператором. В качестве операторов, используемых в составном операторе, могут использоваться любые операторы, допустимые в Паскале, в том числе условные операторы, а также составные операторы. Составной оператор: Begin оператор 1; оператор 2; ……. оператор n; End;
Способы ветвления алгоритма на несколько рукавов
Один из способов реализации ветвления на несколько рукавов – использование вложенных операторов IF
Программа для нашего примера примет вид: Program Pr4; Var a,x: integer; Begin Writeln('Введите x') Read (x); If x
Пример. Составьте программу, определяющую наибольшее значение переменных X,Y,Z. Program Pr5; Var x, y, z, p: integer; Begin WriteLn (Задайте значения x, y, z); ReadLn (x, y, z); p:=x; If p
СРАВНЕНИЕ СТРОК
Для упорядочивания слов люди давно придумали замечательный способ – алфавитный. Именно так, например, упорядочены слова в словарях. Будем считать большим из двух слов то, которое в словаре стоит дальше. Если первая буква первого слова стоит в алфавите дальше, чем первая буква второго слова, то второе слово больше первого. Если у сравниваемых слов первые буквы совпали, то сравниваются вторые буквы, и т.д. Сравнение строк на компьютере основано на том, что каждый символ имеет свой АSСII-код, и при сравнении строк сравниваются коды составляющих их символов. СЛОН > МОСЬКАЖИРАФ > ЖИР СРАВНЕНИЕ СТРОК
Пример. Составить программу, проверяющую правильность пароля Предположим, что пароль – это слово «груша». Программа запрашивает у пользователя пароль, сравнивает его с нашим паролем. Если пользователь ввел правильный пароль, то для него доступ открыт, а если пароль не правильный, то доступ закрыт. Program Pr6; Var parol :string; Begin WriteLn (Какой пароль?); ReadLn (parol); If parol=груша then writeLn (Доступ для Вас открыт) Else writeLn (Доступ закрыт!!!); ReadLn; End.
Пример. Составить программу, которая предлагает Ивану- Царевичу выбрать правильное направление пути. У Ивана-Царевича есть три варианта дальнейшего пути: направо, налево, вперед. Program Pr7; Var p :string; Begin WriteLn (Куда путь держишь?); ReadLn (p); If p=направо then writeLn (Коня потеряешь); If p=налево then writeLn (Голову сложишь); If p=прямо then writeLn (Невесту найдешь); ReadLn; End.
Выводы: Ветвление на три и более рукава можно организовывать с помощью вложенных команд IF, нескольких неполных команд IF, а также, комбинируя обе возможности. Сравнение строк на компьютере основано на том, что каждый символ имеет свой АSСII-код, и при сравнении строк сравниваются коды составляющих их символов.
1.Написать программу, которая проверяет, делится ли на 3 любое целое двухзначное число, введенное с клавиатуры. 2.Написать программу, которая вычисляет оптимальный вес пользователя, сравнивает его с реальным и выдает рекомендации о необходимости поправиться или похудеть. Оптимальный вес вычисляется по формуле: рост (в сантиметрах) – 100. Реальный вес и рост задаются с клавиатуры. 3.Написать программу, которая из трех чисел, вводимых с клавиатуры, выбирает наибольшее. ЗАДАНИЕ