Помогите решить две задачи Пожалуйста: 1.Найти номер последнего отрицательного элемента в массиве. 2.Заполнить N элементов массива А числами Фибоначчи (первые два элемента равны 1, а каждое следующее - сумме двух предыдущих). И Пожалуйста Обе
APAL
13.04.2004 15:59
1. ... for i:=1 to Mmax do If m[i]<0 then k:=i; Writeln('Последний отрицательный элемент под номером ',k,' и равен ',m[k]); ...
APAL
13.04.2004 16:01
2. ... A[1]:=1; A[2]:=1; For i:=3 to N do A[i]:=A[i-1]+A[i-2]; ...
GORBUNKI
13.04.2004 16:43
Цитата
Помогите решить две задачи Пожалуйста: 1.Найти номер последнего отрицательного элемента в массиве. 2.Заполнить N элементов массива А числами Фибоначчи (первые два элемента равны 1, а каждое следующее - сумме двух предыдущих). И Пожалуйста Обе
Только полностью решёные задачи, а то я в этом ничего не соображаю!
APAL
13.04.2004 18:01
Цитата(GORBUNKI @ 13.04.04 13:43)
Только полностью решёные задачи, а то я в этом ничего не соображаю!
1.
Код
Const Mmax:=20; Var i,k : Word; m : array [1..Mmax] of Integer; Begin {Заполняем массив случ. числами от -200 до +200} For i:=1 to Mmax do m[i]:=Round(Random(400)-200);
For i:=1 to Mmax do If m[i]<0 then k:=i; Writeln('Последний отрицательный элемент под номером ',k,' и равен ',m[k]); End.
P.S.: Программу писал прямо здесь. Т.е. я ее не проверял в работе...
APAL
13.04.2004 18:22
2.
Код
Const N:=100; Var A : Array [1..N] of LongInt; Begin A[1]:=1; A[2]:=1; For i:=3 to N do Begin A[i]:=A[i-1]+A[i-2]; Writeln(A[i]); End; End.
fms
14.04.2004 7:02
в первой задаче можно просто задом наперед массив просмотреть и до 1-ого отрицательного.. тогда немного быстрее..
AlaRic
14.04.2004 17:06
Оптимизация и устранение неточностей:
Код
Const Mmax=20; Var i,k : Word; m : array [1..Mmax] of Integer; Begin Randomize; Clrscr; {Заполняем массив случ. числами от -200 до +200} For i:=1 to Mmax do m[i]:=Round(Random(400)-200); For i:=Mmax downto 1 do If m[i]<0 then begin k:=i; break; end; Writeln('Последний отрицательный элемент под номером ',k,' и равен ',m[k]); End.
fms
15.04.2004 3:14
лучше вместо for'a while или repeat использовать.. из них лучше выходить в нужный момент..
APAL
16.04.2004 13:26
Да, оптимизация на лишняя...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.