Пусть элементами массива A (a[1], a[2], a[3], a[4]) являются
соответственно x, -x, x
2
, -x
2
. Чему будет равно значение выражения
a[-a[a[3]-2]]+a[-a[a[3]]]
при x=2?
4. Даны описания:
Type Ora = 0..23;
Grade = -40..40;
Temperatura = array [Ora] of Grade;
Var t : Temperatura;
Компоненты переменной t представляют собой значения температуры,
измеряемой каждый час в течение 24 часов. Напишите программу,
которая:
- вычисляет среднюю температуру;
- определяет количество дней с температурой ниже нуля.
5. Используя тип данных массив, напишите программу, которая реализует
алгоритм Эратосфена для вычисления чисел, меньших заданного
n (n ≤ 200).
6. Напишите программу, которая расшифровывает строки символов,
зашифрованные следующим образом: каждая буква ‘Z’ заменяется буквой ‘A’; все пробелы заменяются знаком ‘-‘.
program pr1;
uses
crt;
const
arr1 : array[1..12] of integer = (5, 4, -3, 1, 0, -4, 0, 25, -8, 0, -17, -1);
type
arr2 = array of integer;
var
arr : arr2;
n : integer;
i, sot, spl, snu : byte;
ch : char;
begin
write('Хотите использовать заданный по умолчанию массив? (y/n): ');
ch := readkey;
writeln(ch);
sot := 0;
spl := 0;
snu := 0;
if ((ch='y') or (ch='Y')) then begin
{ Используем заданный по умолчанию }
for i:=1 to 12 do begin
if arr1[i] > 0 then inc(spl);
if arr1[i] < 0 then inc(sot);
if arr1[i] = 0 then inc(snu);
write(arr1[i], ' ');
end;
writeln;
end
else begin
{ Создаём и заполняем новый массив }
write('Введите желаемый размер массива: ');
readln(n);
setLength(arr, n);
writeln('Введите элементы массива:');
for i:=0 to high(arr) do
readln(arr[i]);
for i:=0 to high(arr) do begin
if arr[i]>0 then inc(spl);
if arr[i]<0 then inc(sot);
if arr[i]=0 then inc(snu);
write(arr[i], ' ');
end;
writeln;
end;
writeln('Количество отрицательных элементов: ', sot);
writeln('Количество нулевых элементов: ', snu);
writeln('Количество положительных элементов: ', spl);
end.
begin
var s:=ReadLines('in.txt').ToArray;
var n:=StrToInt(s[0]);
var a:=s[1].ToWords.Select(e->StrToInt(e)).ToArray;
var f:=OpenWrite('out.txt');
Writeln(f,n,' - (кол-во чисел)');
foreach var e in a do Write(f,e,' '); Writeln(f);
Writeln(f,'Среднее значение четных ',
a.Where(x->x.IsEven).Average);
Writeln(f,'Среднее значение нечетных ',
a.Where(x->x.IsOdd).Average);
f.Close
end.
Файлы in.txt и out.txt находятся во вложении.
Содержимое файла out.txt:
15 - (кол-во чисел)
-22 49 33 47 -10 -1 20 -18 2 21 2 -25 21 -47 -36
Среднее значение четных -8.85714285714286
Среднее значение нечетных 12.25