М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Zebra1411
Zebra1411
13.05.2020 21:36 •  Информатика

Разработайте программу, которая записывает в два текстовых файла члены последовательности фибоначчи - в один - четные члены, в другой - нечётные . последовательность фибоначчи определяется следующим образом : 1, 1, 2, 3, 5, 8, 13, a1=a[i-1]+a[i-2])

в среде freepascal

👇
Открыть все ответы
Ответ:
agarkovatanech
agarkovatanech
13.05.2020
Program pr3;
Var A : array [1..100, 1..100] of integer ; {резервирование памяти под массивы}
B : array [1..100, 1..100] of integer ;
C : array [1..100, 1..100] of integer ;
m, n, i,j: integer ; {переменные i,j вводятся как индексы массива}
Begin
randomize;
writeln ('Введите размерность матриц m и n (числа <100)');
readln (m, n);
For i:=1 to m do
For j:=1 to n do
begin
A[i,j]:=random (20)-10; {ввод элемента матрицы}
B[i,j]:=random (20)-10; {ввод элемента матрицы}
end;
writeln ('Итоговая матрица A: ');
For i:=1 to m do
begin
For j:=1 to n do write (A[i,j], ' '); {вывод элементов производится в виде матрицы }
writeln; {после перебора всех столбцов одной строки – переход новую строку}
end;
writeln;
writeln ('Итоговая матрица B: ');
For i:=1 to m do
begin
For j:=1 to n do write (B[i,j], ' '); {вывод элементов производится в виде матрицы }
writeln; {после перебора всех столбцов одной строки – переход новую строку}
end;
writeln;
For i:=1 to m do {цикл по всем строкам матрицы}
For j:=1 to n do {цикл по всем столбцам матрицы}
if (A[i,j] < B[i,j]) then C[i,j] := B[i,j] else C[i,j] := A[i,j];
writeln ('Итоговая матрица C: ');
For i:=1 to m do
begin
For j:=1 to n do write (C[i,j], ' '); {вывод элементов производится в виде матрицы } writeln; {после перебора всех столбцов одной строки – переход новую строку}
end;
end.
4,5(20 оценок)
Ответ:
Erumbumbum
Erumbumbum
13.05.2020
Const n=20;
var a:array[1..n] of integer;
i,i1,i2,x:integer;
begin
Randomize;
a[1]:=random(10);
write(a[1],' ');
for i:=2 to n do
 begin
 a[i]:=a[i-1]+random(10);
 write(a[i],' ');
 end;
writeln;
write('x = '); readln(x);
i1:=1; i2:=n;
repeat
i:=(i1+i2) div 2;
if a[i]<x then i1:=(i1+i2) div 2+1;
if a[i]>x then i2:=(i1+i2) div 2-1;
until (a[i]=x)or(i1>i2);
if a[i]=x then 
 begin
 writeln('Искомый(ые) номер(а) элемента(ов):');
 while (i>0)and(a[i]=x) do i:=i-1;
 i:=i+1;
 while (i<=n)and(a[i]=x) do begin write(i,' '); i:=i+1; end;
 end
 else writeln('Элемент не найден');
writeln;
end.

Пример:
5 6 14 15 15 22 30 36 45 45 50 56 60 64 67 76 84 92 99 101 
x = 15
Искомый(ые) номер(а) элемента(ов):
4 5 
4,7(88 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ