Описать массив из 10 элементов указателей на целые числа. Ввести с клавиатуры 10 чисел с помощью указателей. Удалить четные элементы. Вывести на экран оставшиеся элементы
Категория: Delphi/Pascal
2012-03-04 21:14:21
code: #pascal
program PascalGuru; label 1; type PInteger = ^Integer; ArrayPInteger = array[1..10] of PInteger; PArrayPInteger = ^ArrayPInteger; function Max(A:PArrayPInteger; Size:integer):integer; var i:integer; r:integer; begin if Size>0 then begin r:=A^[1]^; for i:=2 to Size do if A^[i]^>r then r:=A^[i]^; end else r:=0; Max:=r; end; var i,j,n: integer; Arr:PArrayPInteger; begin getmem(Arr, sizeof(PInteger)*10); for i:=1 to 10 do begin new(Arr^[i]); write('vvedite ',i,'-e chislo:'); read(Arr^[i]^); end; n:=10; 1: for i:=1 to n do if Arr^[i]^ mod 2=0 then begin for j:=i to n-1 do Arr^[j]^:=Arr^[j+1]^; dec(n); goto 1; end; writeln; writeln('Massiv posle udalenia:'); for i:=1 to n do writeln(i,') ',Arr^[i]^); for i:=1 to n do dispose(Arr^[i]); readln; readln; end.
Поделиться: