Вводятся длины векторов, состоящего из целых чисел, и его элементы. Продублировать элементы, являющимися числами Фибоначчи
Категория: Delphi/Pascal
2012-02-26 20:56:06
code: #pascal
program dl; label 1; var m:array [1..100] of integer; i,j,n,kol:integer; Procedure Insertion (N,K:integer; Z:integer); {процедура вставки элемента в массив} Var j:integer; begin For j:=N downto K do m[j+1]:=m[j]; m[K]:=Z; End; {************конец процедуры-************} begin write('Vvedite N (razmer massiva): '); readln(n); {считываем размер массива} for i:=1 to n do begin write('M[',i,']='); readln(m[i]); end; {считываем сам масссив} for i:=1 to n do write(m[i],' '); i:=0; j:=1; 1:for i:=j to n-2 do if m[i]=m[i+2]-m[i+1] then begin {здесь определяем является ли число - Фибонначи} Insertion(n,i+1,m[i]); inc(n); j:=j+2; goto 1; {дублируем} end; writeln;writeln; writeln('Produblirovano:'); for i:=1 to n do write(m[i],' '); {выводим исходный масссив на экран} readln; end.
Поделиться: