ВАРИАНТ 6 1. Дан одномерный массив а из шести элементов: -125 11 200 10 1) Как объявить этот массив в программе, записанной на языке Питон? 2) Чему равно значение элемента массива с индексом 4? 3) Чему равно значение элемента массива a[a [4]] ? 2. Программа обрабатывает одномерный делочисленный мас- сив Dat: 1 1 2 5 6 7 8 9 10 Dat [1] 70 80 40 40 70 80 90 Заполните трассировочную таблицу и определите, какие числа будут выведены в результате выполнения следую- щего фрагмента программы. k : 1; k m i dat[i] (ЭТО ТОЖЕ В ПИТОНЕ!)
var s,v,t,a:real;
begin
writeln('Введите скорость, ускорение и время соотвественно');
read(v,a,t);
s:=v*t+(a*sqr(t))/2;
writeln('Расстояние S = ',s);
end.
Задание №2
var a,b,c,d,m,n:integer;
begin
writeln('Введите ширину и высоту комнаты');
read(a,b);
writeln('Введите размеры окна');
read(c,d);
writeln('Введите размеры двери');
read(m,n);
writeln('Площадь стен для оклеивания обоями = ',a*b-c*d-m*n);
end.
Задание №3
var a,b:real;
begin
writeln('Введите два числа');
read(a,b);
writeln('Среднее арифметическое кубов этих чисел = ',(power(a,3)+power(b,3))/2);
writeln('Среднее геометрическое модулей этих чисел = ',sqrt(abs(a*b)));
end.
Задание №4
var x:real;
begin
writeln('Введите ребро куба');
read(x);
writeln('Площадь грани = ',sqr(x));
writeln('Площадь полной поверхности = ',6*sqr(x));
writeln('Объем куба = ',power(x,3));
end.
Задание №5
var r1,r2:real;
begin
writeln('Введите внешний и внутренний радиус');
read(r1,r2);
if r1<r2 then writeln('Внешний радиус должен быть больше внутреннего') else
writeln('Площадь кольца = ', Pi*sqr(r1)-Pi*sqr(r2));
end.
nm = 50;
type
Data = record
day: 1..31;
month: 1..12;
year: integer
end;
lichn = record
famnam: string;
datr: Data
end;
listlichn = array [1..nm] of lichn;
var
m: listlichn;
n: integer;
procedure GetLichn(k: integer);
begin
Write(k, ') Введите через пробел фамилию, имя: ');
Readln(m[k].famnam);
Writeln('Введите через пробел день, месяц и год рождения: ');
Readln(m[k].datr.day, m[k].datr.month, m[k].datr.year)
end;
procedure WriteLichn(k: integer);
begin
Writeln(m[k].famnam, ' ', m[k].datr.day, '.', m[k].datr.month, '.', m[k].datr.year)
end;
procedure Vvod(var p: integer);
var
i: integer;
begin
Write('Введите количество лиц n (максимум 50) -> ');
Readln(p);
if p <= 50 then for i := 1 to p do GetLichn(i)
else begin Writeln('Вы ввели неправильное значение'); p := 0 end
end;
procedure Zapros1;
{ фамилии и имена тех кто родился в месяц l года }
var
i: integer;
l: 1..12;
begin
Write('Введите номер месяца рождения (1-12): ');
Readln(l);
for i := 1 to n do
if m[i].datr.month = l then WriteLichn(i)
end;
procedure Zapros2;
{ фамилии и имена тех кто родился в год a }
var
a, i: integer;
begin
Write('Введите год рождения: ');
Readln(a);
for i := 1 to n do
if m[i].datr.year = a then WriteLichn(i)
end;
procedure Zapros3;
{ фамилии и имена тех чья дата рождения z.l.a }
var
a, i: integer;
z: 1..31;
l: 1..12;
begin
Write('Введите через пробел день, месяц и год рождения: ');
Readln(z, l, a);
for i := 1 to n do
if (m[i].datr.year = a) and (m[i].datr.month = l)
and (m[i].datr.day = z) then
WriteLichn(i)
end;
begin
Vvod(n);
Zapros1;
Zapros2;
Zapros3
end.
Тестовое решение:
Введите количество лиц n (максимум 50) -> 3
1) Введите через пробел фамилию, имя: Иванов Иван
Введите через пробел день, месяц и год рождения:
24 12 1973
2) Введите через пробел фамилию, имя: Петров Петр
Введите через пробел день, месяц и год рождения:
05 03 1982
3) Введите через пробел фамилию, имя: Козлова Екатерина
Введите через пробел день, месяц и год рождения:
1 12 1994
Введите номер месяца рождения (1-12): 12
Иванов Иван 24.12.1973
Козлова Екатерина 1.12.1994
Введите год рождения: 1982
Петров Петр 5.3.1982
Введите через пробел день, месяц и год рождения: 5 3 1982
Петров Петр 5.3.1982