Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пример выполнения заданий на Pascale.doc
Скачиваний:
20
Добавлен:
15.02.2015
Размер:
421.89 Кб
Скачать

Тема 4. Простейшие циклы Задача 11

Задание:

Даны натуральные числа n, m. Получить сумму m последних цифр числа n.

Алгоритм:

  1. Вводим натуральные числа n, m

  2. Некому счетчику суммы присваиваем значение 0

  3. i=1

  4. Если i<=m, то k присвоить значение k+(n mod 10), n присвоить значение n div10

  5. i=i+1, возврат к шагу 4

  6. Вывод на экран k.

Блок-схема:

Реализация :

program t4_num11;

var

n:longint;

m,i,k:byte;

begin

Writeln('Введите натуральные числа');

Write('m=');

Readln(m);

Write('n=');

Readln(n);

k:=0;

for i:=1 to m do

begin

k:=(n mod 10)+k;

n:=n div 10;

end;

Writeln('Сумма ',m,' последних цифр числа n :',k);

Readln;

end.

Протокол:

  1. В процессе диалога вводим n=1234, m=2

  2. k:=0

  3. I=1, k=0+4=4, n=123

  4. I=2=m, k=4+3=7, n=12

  5. Печать «Сумма 2 последних цифр числа n : 7»

Тема 5. Простейшие графические построения Задача 15

Задание:

Получить на экране рис. 15 и обеспечить возможность "зажигить" и "гасить" свет в доме: включение и выключение света должно выполнятся с клавиатуры, окно дома при зажженном и при погашенном свете окрашивается в разные цвета.

Блок-схема:

Алгоритм:

  1. Инициализируем графический режим

  2. Рисуем дом

  3. Нажимаем клавишу

  4. Если нажата не клавиша выхода (в данном примере взята клавиша <esc>), то засим/зажигаем свет и возвращаемся в шагу 3 , иначе - выходим

Реализация:

program t5_num15;

uses graph,crt;

var

mode,regim,i:integer;

coord:array [1..4] of pointtype;

ch:char;

begin

{инициализация графического режима}

mode:=detect;

initgraph(mode,regim,'');

{блок программы создания начального интерфейса(рисование дома и т.д.)}

setbkcolor(blue);

setcolor(white);

outtextxy(50,420,'Для выхода нажмите <Esc>');

outtextxy(50,440,'(для включения/выключения используйте любую другую клавишу)');

coord[1].x:=300; coord[1].y:=40; {рисование крыши}

coord[2].x:=190; coord[2].y:=150;

coord[3].x:=410; coord[3].y:=150;

coord[4].x:=300; coord[4].y:=40;

rectangle(200,150,400,350);

rectangle(220,200,270,250);

rectangle(300,200,350,350);

drawpoly(4,coord);

coord[1].x:=370; coord[1].y:=110; {рисование трубы}

coord[2].x:=370; coord[2].y:=40;

coord[3].x:=340; coord[3].y:=40;

coord[4].x:=340; coord[4].y:=80;

drawpoly(4,coord);

setfillstyle(solidfill,yellow);

floodfill(222,202,white);

setfillstyle(solidfill,lightred);

floodfill(302,202,white);

setfillstyle(4,red);

floodfill(300,50,white);

setfillstyle(1,6);

floodfill(202,152,white);

floodfill(342,42,white);

i:=1;

{зажигание/гашение света}

repeat

ch:=readkey;

i:=-i;

if ch<>#27 then

begin

if i=1 then setfillstyle(solidfill,yellow)

else setfillstyle(solidfill,blue);

floodfill(222,202,white);

end;

until ch=#27;

closegraph; {закрытие графического режима}

end.

Вид экрана во время выполнения программы

Протокол:

  1. Запускаем программу – в начале «горит свет»

  2. Нажимаем «а» - «свет гаснет»

  3. Нажимаем «Enter» - «свет включается»

  4. Нажимаем «Esc» - выходим из программы