Готовимся к зачету по основам программирования
Текст зачетаРешаем демо-вариант ГИА-2013
(для тех, кто подумывает о сдаче экзамена по информатике)Задания демо-варианта
Форма для отправки ответов
Вспоминаем оператор выбора Case
Иногда необходимо выполнять какие либо действия в
зависимости от значения переменной. Например, необходимо вывести название дня
недели по его порядковому номеру n. Можно для этого, конечно, использовать последовательность
ветвлений:
If n = 1 then Writeln(‘понедельник’);
If n = 2 then Writeln(‘вторник’);
If n = 3 then Writeln(‘среда’);
If n = 4 then Writeln(‘четверг’);
И т.д.
Но значительно удобнее в таких случаях применять конструкцию
«Выбор».
Структура оператора такова:
CASE
<имя_переменной> OF
<значение_переменной> : <оператор1>;
<значение_переменной> : <оператор2>;
<значение_переменной> : <оператор3>;
…
END;
Используя данную конструкцию для решения задачи с днями
недели получим следующий фрагмент программы:
CASE
N OF
1: Writeln(‘понедельник’);
2: Writeln(‘вторник’);
3: Writeln(‘среда’);
4: writeln(‘четверг’);
{и т.д.}
END;
При выполнении данного блока программы, в зависимости от
того, чему равно значение N,
будут выполняться различные операции. Например, если N=3, то на экран выведется слово
«среда».
Очень удобно, что вместо значений переменных можно через две
точки указать их диапазон:
CASE N OF
1: Writeln(‘понедельник’);
2: Writeln(‘вторник’);
3: Writeln(‘среда’);
4: writeln(‘четверг’);
5..7: writeln (‘выходной’);
END;
Теперь,
если в переменной N
окажется число5, 6 или 7, то на экран будет выводиться слово «выходной».
Если в
качестве значений переменной N
не окажется текущего значения N
(если в нашем примере N
окажется равной 10), то ни один из операторов конструкции не будет выполнен и
программа перейдет к следующему после конструкции CASE оператору.
Однако
есть возможность указать, что делать, если в списке значений переменной нет
текущего значения N.
Осуществляется это с помощью слова ELSE:
CASE N OF
1: Writeln(‘понедельник’);
2: Writeln(‘вторник’);
3: Writeln(‘среда’);
4: writeln(‘четверг’);
5..7: writeln (‘выходной’);
ELSE
writeln (‘дня
недели с
номером ‘,N, ‘ не существует’);
номером ‘,N, ‘ не существует’);
END;
Если
сейчас переменная N
окажется равна, например, 14, то на экране появится надпись «дня недели с
номером 14 не существует.
Комментариев нет:
Отправить комментарий