Практическая работа Число рождение (оператор VAl, WHILE, CASE)
Задача. Число рождения. Определить число вашего рождения, т.е. сумму цифр, входящих в дату рождения, причем суммирование продолжается до тех пор, пока сумма не станет однозначным числом. Пример. 18 ноября 1992 годаСумма чисел:28+12+1996=2036 – четырехзначное число2+0+3+6=11 – двузначное число1+1=2 – число рождения Энергичность Подсказки Оформим нахождение суммы цифр в виде подпрограммы-функции.Используем цикл с предусловием. Листинг. Uses crt;
Var
T:string;
Day, mon, god, fl1, fl2,fl3, number : integer ;
Function sum( n : integer) : integer ;
Var
s: integer;
Begin
s:=0;
while n>0 do
begin S:=s+(n mod 10); n:=n div 10 ; end ;
sum:=s;
End; Begin Repeatwrite(‘Введите дату рождения: дд.мм.гг: ’) ; readln (T) ;val (copy (T, 1, 2), day, fl1) ;val (copy (T, 4, 7), day, fl2) ;val (copy (T, 7, 4), day, fl3) ; until (fl1=0) and ) (fl2=0) and (fl3=0) ;number:=day+mon+god;while number>=10 donumber:=sum(number) ; Writeln (T, ‘ - ’ , number);end . Write (‘ Ваше наиболее яркое качество: ’);Case number of 1:T : =‘ воля’ ;2:T : =‘ энергичность’ ;3:T : =‘ любознательность’ ;4:T : =‘ здоровье’ ;5:T : =‘ интуиция’ ;6:T : =‘ мастерство’ ;7:T : =‘ удачливость’ ;8:T : =‘ правдолюбие’ ;9:T : =‘ ум, память’ ;End;Writeln (T); 1. Напишите на Паскале программу, которая запрашивает с клавиатуры массив из N чисел, а затем выводит среднее арифметическое всех элементов массива.2. Перепишите программу на Паскале, исправив ошибки:Program massiv;Var a:array(-10..10) of integer;Begin For i:=1 to 20 Do Read(a[i]); For i:=1 to 20 Do a[i]:=a[i]/10;For i:=1 to 20 Do Write(a[i])End.