Ответы на задания из предыдущей статьи Задание 1
Код
Uses Crt;
Var x:integer; Begin Write('Введите число - '); readln(x); If x>0 then Writeln(x,'^3=',x*x*x); If x<0 then Writeln(x,'^2=',x*x); End. Задание 2
Код
Uses Crt;
Var x,i,j=1:integer; Begin Write('введите положительное число - '); Readln(x); j:=1; If x>0 then begin For i:=1 to x do j:=j*i; end Else Writeln('Запустите программу ещё раз и введите число >0'); Writeln(j); End.
Оператор множественного выбора Case
Роботы - очень деловые создания, их время расписано буквально по секундам! Попробуем взять с них пример и составим небольшой план на следующую неделю:
Вот такой "напряженный" график у нас получился! А чтобы не запутаться в нём напишем "программу-напоминалку", которая подскажет нам - чем мы должны заниматься!
Именно здесь нам и пригодиться оператор множественного выбора Сase. Полная форма записи оператора Сase: Case <ключ выбора> of <вариант выбора 1>: begin <операторы>; end; <вариант выбора 2>: begin <операторы>; end; ... <вариант выбора N>: begin <операторы>; end; Else begin <операторы>; end; end; Краткая форма записи оператора Сase: Case <ключ выбора> of <вариант выбора 1>: <оператор 1>; <вариант выбора 2>: <оператор 2>; ... <вариант выбора N>: <оператор N>; end; Ключ выбора - это переменная простого типа (integer, char, byte, boolean). Исходя из значений этой переменной, оператор Case и будет выполнять то или иное действие. Варианты выбора - значения нашего ключа. Если ключ примет значение одного из вариантов выбора, то программа выполнит оператор стоящий за этим вариантом. Давайте попробуем разобраться на практике. Вернёмся к нашей "программе-напоминалке". Для удобства ввода данных обозначим дни недели цифрами от 1 до 7, где понедельник - 1, а воскресение - 7. Наша программа должна запрашивать ввод данных и после этого выводить на экран план на сегодняшний день. Программа выглядит довольно просто: Код
Uses Crt;
Var x:integer; Begin Write('Введите число, соответствующее дню недели - '); Readln(x); Case x of 1,3,7: Writeln('Планы на сегодня - отдых!'); 2: Writeln('Планы на сегодня - уборка в доме.'); 4: Writeln('Планы на сегодня - помощь родителям.'); 5: Writeln('Планы на сегодня - чтение книги.'); 6: Writeln('Планы на сегодня - прогулка с друзьями.'); end; End.
Обратите внимание: варианты выбора, которые предполагают одинаковые действия операторов, мы можем сгруппировать в 1 пункт (как в случае с вариантами 1,3,7)!
Результат работы программы:
Как было написано выше: оператор Case умеет работать не только с целочисленным ключом. Давайте напишем программу, которая будет определять - какой символ пользователь ввёл с клавиатуры (заглавную букву русского алфавита, строчную букву русского алфавита, заглавную букву английского алфавита, строчную букву английского алфавита, цифру от 1 до 9 или символ). Приступим: Код
Uses Crt;
Var a:char; Begin Write('Введите одиночный символ - '); Readln(a); Case a of 'a'..'z': Writeln('Вы ввели строчную букву анеглийского алфавита'); 'A'..'Z': Writeln('Вы ввели заглавную букву анеглийского алфавита'); 'а'..'я': Writeln('Вы ввели строчную букву русского алфавита'); 'А'..'Я': Writeln('Вы ввели заглавную букву русского алфавита'); '0'..'9':Writeln('Вы ввели цифру'); Else Writeln('Вы ввели символ'); end; End. Обратите внимание: Char - является символьным типом. Переменная такого типа может хранить лишь 1 символ. При этом программа не делает качественного различия между буквой, цифрой или символом. При использовании символьных типов переменных вместе с оператором Case, варианты выбора необходимо заключать в кавычки. Например 'a'.
Результат работы программы:
Обратите внимание: символ .. свидетельствует о указании диапазона значений, например '1'..'2' означает, что вариант выбора включает в себя все цифры начиная с 1 и заканчивая 9. А при помощи диапазона 'а'..'я' мы включаем в вариант выбора все строчные буквы русского алфавита.
Задания для самостоятельной работы
Задача 1. Напишите программу, которая будет преобразовывать цифры от 1 до 9 в слова. Например: ввод данных - 8, вывод данных - восемь.
Задача 2. Составьте программу, которая запрашивает ввод буквы русского алфавита и определяет: гласная это, согласная, твёрдый или мягкий знаки. Например: ввод данных - Ж, вывод данных - согласная буква русского алфавита.
Ваши вопросы и комментарии можете оставлять ниже.
Начинайте программировать прямо сейчас!
| |
Просмотров: 4473 | | |