1)var a,b,c,a1,b1,c1,s:integer; begin writeln('Введите количество часов в первом моменте времени'); readln(a); writeln('Введите количество минут в первом моменте времени'); readln(b); writeln('Введите количество секунд в первом моменте времени'); readln(c); writeln('Введите количество часов во втором моменте времени'); readln(a1); writeln('Введите количество минут во втором моменте времени'); readln(b1); writeln('Введите количество секунд во втором моменте времени'); readln(c1); s:=abs(a*3600+b*60+c-a1*3600-b1*60-c1); writeln(s,' секунд'); end. 2)var a,b:integer; s:real; begin writeln('Введите первое число'); readln(a); writeln('Введите второе число'); readln(b); if (a+b) mod 2 =0 then s:=a*b else s:= a/b; writeln(s); end. 3)var b,s,n:real; begin writeln('Введите количество часов'); readln(n); n:=n/3; s:=2*power(2,(n-1)); writeln(s,' амёб'); end. 4)var a:array[1..7]of integer; i:integer; begin for i:=1 to 7 do begin a[i]:=random(11); writeln('a[',i,']= ',a[i]); end; end.
Уровень А type num=integer; { можно поменять на real, longint, даже char... }
procedure Swap(var a,b:num); { меняет местами значения a и b } var t:num; begin t:=a; a:=b; b:=t end;
procedure Moving(var a,b,c:num); begin if a>b then begin Swap(a,b); if b>c then begin Swap(b,c); if a>b then Swap(a,b) end end else begin if b>c then Swap(b,c); if a>b then Swap(a,b) end end;
var a,b,c:num; begin Write('Введите три числа: '); Read(a,b,c); Moving(a,b,c); Writeln(a,' ',b,' ',c) end.
Уровень В function Gcd(a,b: longint): longint; { Нахождение НОД } var i: longint; begin while b <> 0 do begin a := a mod b; i := b; b := a; a := i end; gcd := a end;
procedure ShortFraction(var m,n:longint); var k:longint; begin k:=Gcd(m,n); m:=m div k; n:=n div k end;
var a,b:longint; begin Write('Введите числитель и знаменатель дроби: '); Readln(a,b); ShortFraction(a,b); Writeln('Дробь после сокращения равна ',a,'/',b) end.
Тестовое решение: Введите числитель и знаменатель дроби: 25 15 Дробь после сокращения равна 5/3