среда, 20 февраля 2013 г.

9А класс. Чем занять время на каникулах :)

Готовимся к зачету по основам программирования

Текст зачета

Решаем демо-вариант ГИА-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, ‘  не существует’);
END;

Если сейчас переменная N окажется равна, например, 14, то на экране появится надпись «дня недели с номером 14 не существует.

Комментариев нет:

Отправить комментарий