Это программа должна выдать сразу? До какого значения? Конечная цифра задается с клавиатуры?
var
i: Integer;
Af: array [1..10] of Integer;
begin
Af [1] := 1; // первый член ряда равен 1
Af [2] := 1; // второй член ряда равен 1
for i := 3 to 10 do begin // цикл, начинающийся с 3-го члена до заданного (десятого)
Af [i] := Af [i - 2] + Af [i - 1]; // каждый член ряда равен сумме двух предыдущих
end;
for i := 1 to 10 do begin // вывод на экран первых 10 членов ряда
Write (Af [i], ', ');
end;
end.
// ------ 2-й вариант (без использования массива) ---------
var
a, b, c, i: Integer;
begin
a := 1;
Write (a, ', ');
b := 1;
Write (b, ', ');
for i := 3 to 10 do begin
c := a + b;
Write (c, ', ');
a := b;
b := c;
end;
end.
Ответ:
2.5 мбайт
Объяснение:
1280 * 1024 * 16 бит = 20 971 520 бит
20 971 520 бит / 8 = 2 621 440 байт
2 621 440 байт / 1024 = 2560 кбайт
2560 кбайт / 1024 = 2.5 мбайт
Заметим, что есть условие, проверяющее, является ли какой-нибудь элемент массива Sea больше 220. Сразу же откидываем все элементы, которые меньше 220: 1, 2, 3, 4, 6 (поскольку 220 не больше 220, а равно), 8, 9, 10, 11, 12. Остаются элементы 5 и 7. После того, как оператор (то, что проверяется) в условии равен истине, выполняется увеличение переменной s на величину элемента массива. У нас прошло через условие лишь два элемента, поэтому, к существующей переменной s, равной 1 мы добавляем 230 (5-й элемент) и 240 (7-й элемент) и получаем:
100 + 230 + 240 = 570
<h2><u>Ответ</u></h2>
570