Zadání:
Sestavte program, který nageneruje pole o 15 prvcích hodnotami z intervalu -10..10. Do druhého pole
na pozici kladných čísel z prvního pole umístí hodnotu -1, nulové ponechá
a na pozici kladných vloží hodnotu +1 (funkce signum). Obě pole vytiskne.
Řešení:
Pro jednoduchost budeme generovat hodnoty prvků pole z intervalu -10..+10 (pole1[i]:=random(21)-10;).
Pomocí cyklu FOR nagenerujeme každou hodnotu prvku pole, vložíme jí na příslušnou pozici a hned otestujeme,
zda je menší, rovno či větší než nula a na základě výsledku do druhého pole vložíme hodnotu -1, 0 nebo +1.
Na konci programu pomocí cyklu FOR obě pole vytiskneme.
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils;
var pole1,pole2:array[1..15] of integer;
i:integer;
begin
randomize;
for i:=1 to 15 do
begin
pole1[i]:=random(21)-10;
if pole1[i]<0 then pole2[i]:=-1;
if pole1[i]=0 then pole2[i]:=0;
if pole1[i]>0 then pole2[i]:=1;
end;
writeln('Puvodni pole');
for i:=1 to 15 do write(pole1[i]:4);
writeln;
writeln('Upravene pole');
for i:=1 to 15 do write(pole2[i]:4);
readln;
end.
program ke stažení