Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_раб1.doc
Скачиваний:
8
Добавлен:
13.07.2019
Размер:
152.58 Кб
Скачать
  1. Дано двузначное целое число. Определить: сумму и произведение цифр числа; число, образованное перестановкой цифр исходного числа.

    Математическая запись

    a - введенное двузначное число

    k1= Ост(а /10) {последняя цифра числа}

    k2= а/10 {первая цифра числа }

    s= k1+k2 {сумма цифр числа}

    p= k1*k2 {произведение цифр числа}

    b= k1*10+k2 {перестановка местами цифр числа}

    Программный код

    Program z;

    Var a,b,k1,k2,s,p:integer;

    Begin

    Reanln(a);

    k1:=a mod 10;

    k2:=a div 10;

    s:= k1+k2;

    p:=k1*k2;

    b:=k1*10+k2;

    Writeln('Cymma 's, ' Proizvedenie ', p, 'Perestanovka ', b);

    End.

    Тестирование

    1) a= 10; s=1; p=0; b=1; 2) a=15; s=6; p=5; b=51;

    Легенда

    Имя

    Тип

    Класс

    Описание

    a

    целое

    входное

    число

    b

    целое

    выходное

    число

    k1

    целое

    рабочее

    число

    k2

    целое

    рабочее

    число

    s

    целое

    выходное

    число

    p

    целое

    выходное

    число

    Блок-схема

  2. Для введенного трехзначного числа получить число, образованное путем перестановки цифр сотен и единиц.

Математическая запись

а – введенное трехзначное число

k – полученное перестановкой цифр сотен и единиц

b= а/100 {первая цифра числа А}

a= Ост(а /100) {уменьш. число на разряд сотен}

c= Ост(а /10) {последняя цифра числа А}

a= а/10 {средняя цифра числа}

k=c*100+a*10+b {соединение цифр в число}

Программный код

Program Action;

Var а,b,c,k: Integer;

Begin

Readln(a);

b:=a div 100;

a:= a mod 100;

c:= a mod 10;

a:= a div 10;

k:= c*100+a*10+b;

Writeln(k);

End.

Тестирование

1) a= 153;

k=351;

2) a=805;

k=508;

Блок-схема

Легенда

Имя

Тип

Класс

Описание

a

целое

входное

число

b

целое

рабочее

число

с

целое

рабочее

число

k

целое

выходное

число

  1. Идет k-я секунда суток. Определить, сколько целых часов (h) и целых минут (m) прошло с начала суток.

Например: Если k=13257=3*3600+40*60+57, то h=3, m=40.

Вывести на экран фразу: «It is … hours…minutes». Вместо многоточия вывести значения соответствующих переменных.

Математическая запись

s – введенное число

h – кол-во часов

m – кол-во минут

Если s>=60 Тогда m= s \60; s= Ост.(s / 60)

{Если секунд больше 60, тогда находи кол-во минут и секунд}

Если m >=60 Тогда h= m \60; m= Ост.(m / 60); {Если минут больше 60, тогда находи кол-во часов и минут}

Программный код

Program Action;

Uses crt;

Var s,h,m: Integer;

Begin

Readln(s);

If s>=60 Then begin m:= s div 60; s:= s mod 60; end;

If m>=60 Then begin h:=m div 60; m:=m mod 60; end;

Writeln('It is ', h, ' hours ', m, 'minutes');

End.

Тестирование

1) s= 13257; h=3, m=40

Легенда

Имя

Тип

Класс

Описание

s

целое

входное

число

h

целое

выходное

число

m

целое

выходное

число

Блок-схема

Самостоятельная работа:

1. Минутная стрелка повернулась с начала суток на F градусов (0<= F<360). Определить, сколько сейчас целых минут и целых секунд.

Математическая запись

g – введенное кол-во градусов

m– кол-во минут

s – кол-во секунд

Если f>=6 Тогда

m= f \ 6;

s= Ост.(f / 6)

{Если кол-во градусов больше 6, то находим кол-во минут и секунд}

Программный код

Program Action;

Uses crt;

Var f,s,m: Integer;

Begin

Readln(f);

If f>=6 Then begin

m:= f div 6;

s:= f mod 6;

end;

Writeln(m, ' min ', s, ' sek');

End.

Тестирование

f= 300;

m = 50; s=0;

Блок-схема

Легенда

Имя

Тип

Класс

Описание

f

целое

входное

число

s

целое

выходное

число

m

целое

выходное

число

  1. Пусть в школе проходит ежедневно пять уроков шесть дней в неделю. Тогда в неделе всего 30 уроков. По введенному номеру дня d (от 1 до 6) и номеру урока l (от 1 до 5) вывести порядковый номер этого урока в недели. И наоборот, по введенному номеру урока в недели (от 1 до 30) вывести номер дня и номер урока в дне.

Математическая запись

d – введенный номер дня

l – введенный номер урока

n – выведенный номер урока в неделе

n=d*5+l

n – введенный номер урока в неделе

d – выведенный номер дня

l – выведенный номер урока

d= n \ 5 +1

l=n – (n \ 5)*5

Программный код

Program Action;

Uses crt;

Var d,l,n: Integer;

Begin

Write('номер дня ');

readln(d);

Write('номер урока ');

readln(l);

n:=(d-1)*5+l;

Writeln('порядковый номер этого урока в неделе ',n);

Write(‘Введите номер урока в неделе’); Readln(n);

d= n div 5 +1;

l:=n – (n div 5)*5;

Writeln('номер дня ', d);

Writeln('номер урока ', l);

End.

Тестирование

    1. d=5; l=3; n=23 2) n=14 d=3; l=4;

Блок-схема

SHAPE \* MERGEFORMAT

Легенда

Имя

Тип

Класс

Описание

d

целое

входное/ выходное

номер дня

l

целое

входное/ выходное

номер урока

n

целое

входное/ выходное

номер урока в неделе

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]