Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 5_Операторы ТР.doc
Скачиваний:
1
Добавлен:
24.08.2019
Размер:
163.33 Кб
Скачать

Var day, month, year integer; last : boolean; { true, если текущий день последний день месяца }

r :integer; { если год високосный, то остаток от деления year на 4 равен нулю }

begin

write('Введите цифрами сегодняшнюю дату (число месяц год) —> '); readln(day,month,year); last:=FALSE; case month of 1,3,5,7,8,10,12 : if day=31 then last:=TRUE; 4,6,9,11 : if day=30 then last:=TRUE; 2 : if day = 28 then begin r:=year mod 4; if r <> 0 then last:=TRUE; end;

end; { case }

if last then

begin writeln('Последний день месяца!'); day:=1;

if month=12 then

begin month:=1; year:=year + 1; writeln('C наступающим Новым годом!'); end

else month:=month + 1;

end

else day:=day + 1;

writeln('Завтра ',day,'.',month,'.' ,year ); readln; end.

Результаты работы Pascal-программы:

 Тест 1 . Введите цифрами сегодняшнюю дату (число месяц год) —> 11 12 2009 <Enter>  Завтра 12.12.2009

Тест 2 . Введите цифрами сегодняшнюю дату (число месяц год) —> 30 12 2009 <Enter>  C наступающим Новым годом!

Тест 3 . Введите цифрами сегодняшнюю дату (число месяц год) —> 31 07 2009<Enter>  Последний день месяца!

Пример 1.8.

 

Вычисление результата арифметической операции. Ввести два числа в первой строке и один из знаков +, -, *, / - во второй и вывести на экран результат соответствующего арифметического действия.

Система тестов

 

Номер теста

X

Y

Проверяемый случай

Результат

1

23

4

+

27

2

12

11

-

1

3

45

15

/

3

4

2

33

*

66

Program Calc;

Var operation : Char; {Знак операции}

х, у, z : Real; {Операнды и результат}

stop : Boolean; {Признак ошибочной операции и останова}

begin

stop := false;

repeat 

WriteLn; {Пустая строка-разделитель}

Write('x,y= ' ) ; ReadLn(x,y); 

Write('операция: ') ; ReadLn(operation); 

case operation of

' + ' : z : = x + y;

' - ' : z : = x - y;

' * ' : z : = x * y;

' / ' : z : = x / y;

else stop := true;

end;

if not stop then WriteLn('результат=',z)

until stop 

end.

Результаты работы Pascal-программы:

 Тест 1 . x,y= 23 4 <Enter>  операция: +<Enter>  результат=27

 Тест 2 . x,y= 12 11 <Enter>  операция: -<Enter>  результат=11

 Тест 3 . x,y= 45 15 <Enter>  операция: /<Enter>  результат=3

Тест 4 . x,y= 2 33 <Enter>  операция: *<Enter>  результат=66