Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Паскаль_теория.doc
Скачиваний:
8
Добавлен:
08.11.2018
Размер:
341.5 Кб
Скачать
  1. Измените программу так, чтобы на экран выводилось:

а) произведение второй и третьей цифр;

б) квадрат первой цифры;

в) частное от деления произведения цифр этого числа на их сумму.

Задание для самостоятельного выполнения:

Составить программу нахождения произведения первой и третьей и суммы второй и четвертой цифр натурального четырехзначного числа, введенного с клавиатуры.

  1. Контрольные вопросы:

1. Найти ошибки в записи заголовка программы.

а) PROGRAM Exam 1 в) PROGRAM Exam3

б) PROGRAMM Exam2; г) PROGRAM Exam4;

2. Найти ошибки с точки зрения стандарта языка Паскаль.

a) Program Exam1;

Begin

Const

Limit:=4;

Number:-5;

Type

A=-3

Lower=6;

Label 'A'; 35.2;

Var

B:=Real

б) Program (Input, Output)

Var

A:Real;

B=array [1..10] of byte

label 4;

Type

Ar: array [1..2] of integer

end.

3. Найти ошибки в именах меток.

а) 5; г) -2; ж) -40;

б) 11111; д) ,

в) error; е) 0; з) quit;

4. Найти ошибки в разделе описания констант.

Const

A: Integer;

Box=-5;

Pi=3.14;

True=1;

C=Maxint

Тема: Оператор условия.

Цель: выработать умения и навыки учащихся по использованию при решении задач оператора условия.

План работы:

  1. Повторить теорию.

  2. Набрать заданную программу.

  3. Внести предложенные изменения.

  4. Выполнить задания.

  5. Ответить на контрольные вопросы.

1.Теория.

При решении задач очень часто приходится выполнять различные группы операторов в зависимости от того, выполнилось или нет какое-либо условие (или несколько условий одновременно).

Для реализации указанных действий в языке Паскаль существует специальный оператор - оператор условия.

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

да нет

условие

действие1 действие2

(серия1) (серия2)

Если некоторое <условие> выполняется, то выполняется <действие1> (серия1), а если нет - <действие2> (серия2).

Запись на языке Паскаль:

<действие1> <действие2>;

IF <условие> THEN begin ELSE begin

если то <серия1>; иначе <серия2>;

end end;

Приведенная запись и блок-схема поясняют принцип работы оператора условия в полной форме.

<условие> - логическое выражение, запись которого содержит проверяемое условие.

По аналогии с принятыми математическими операциями отношения, на Паскале запись <условия> может содержать знаки:

> - больше;

< - меньше;

= - равно;

>= - больше или равно;

<= - меньше или равно;

<> - не равно.

<действие1>, <действие2> - любой один оператор. В самом общем случае в данном месте может использоваться еще один оператор условия и т.д..

<серия1>, <серия2> - произвольное количество любых операторов, записанных по правилам Паскаля.

Следует обратить внимание на то, что после <действия1> или после end в <серии1> ; (точка с запятой) не ставится.

В том случае, если надо проверить одновременно выполнение сразу нескольких условий в одном операторе, то необходимо каждое из <условий>

отделять от соседних логической связкой AND (и).

<действие1>

IF <условие1> AND <условие2>...AND <условиеN> THEN begin

<серия1>;

end

<действие2>;

ELSE begin

<серия2>;

end;

Когда же достаточно выполнения хотя бы одного из записанных <условий> в одном операторе, необходимо аналогично предыдущему случаю применить логическую связку OR (или).

Для корректной работы указанного оператора следует каждое <условие> дополнительно заключать в круглые скобки.

Помимо оператора условия в полной форме, существует еще и сокращенная (неполная) форма, которая отличается от рассмотренной только тем, что в записи отсутствует ELSE.

<действие>;

IF <условие> THEN begin

<серия>;

end;

да условие нет

действие

(серия)

В отличие от оператора условия в полной форме после <действия> или end <серии> обязательно ставится ; (точка с запятой).

2. Наберите заданную программу, находящую модуль (абсолютное значение) произвольного числа, введенного с клавиатуры (без использования стандартной функции вычисления модуля числа) и проверьте её работу на ЭВМ:

Program Ex_1;

Var

x,y : real; {исходное число и результат}

Begin

read (x); {вводим с клавиатуры число}

if x>0 then y:=x {если положительное, то само число}

else y:=-x; {иначе меняем знак}

write (y); {результат в y}

End.

начало

Ввод X

да X>0? нет

Вывод Y

конец