GRY-Online.pl --> Archiwum Forum

Pytanie z Pascala.

28.03.2004
19:35
smile
[1]

ronn [ moralizator ]

Pytanie z Pascala.

Jak zrobic i czy w ogole jest to mozliwe :

Mam dwie 10-elementowe tablice i chce zeby trzecia tablica skladala sie z elementow poprzednich dwoch tablic (bedzie miala 2 razy wiecej elementow).

Szukalem, pytalem sie znajomych, ale nikt nie wie jak to zrobic :(

"thank you from rhe mountain" czyli dziekuje z gory :)

28.03.2004
19:41
[2]

Maliniarz [ Konsul ]

ale jakie ma miec wymiary ta 2 tablica ? 10x20 ?

28.03.2004
19:43
[3]

ronn [ moralizator ]

To jest jednowymiarowa tablica postaci array[x..y]

28.03.2004
19:43
[4]

Maliniarz [ Konsul ]

znaczy sie nawiazujac do powyzszej wypowiedzi .. jest to tablica 1 wymiarowa czy dwuwymiarowa i powiedz dokladnie jak ma wygladac ta 3, nowo utworzona tablica

28.03.2004
19:46
[5]

ronn [ moralizator ]

Ona ma po prostu wyswietlic elementy dwoch innych tablic. A tamte tablice skladaja sie, kazda z 10 cyfr. czyli np 1 tablica to 2,2,3,4,5,6,1,2,3,5. a druga 4,6,7,8,9,3,2,4,5,6. To ta trzecia ma skladac sie z tych wszystkich cyfr (ma je wyswietlic uporzadkowane, ale tym sie pozniej zajme).

28.03.2004
19:51
smile
[6]

Maliniarz [ Konsul ]

pascala nie uzywalem juz chyba rok ale sprobuje :)
fr i :=1 to 10 do
c:=a;
fr i :=11 to 20 do
c:=b;
o to chodzilo :D ? a potem sortowanie babelkowe czy inny shit i wszystko gra :)

28.03.2004
19:52
[7]

_Robo_ [ Generaďż˝ ]

Eee? ale w czym problem? zrob tablice na 20 elementow i najnormalniej w siwecie skopiuj tamte elementy do tej 20-elementowej.

28.03.2004
19:53
[8]

ronn [ moralizator ]

Dzieki, a mozesz mi napisac jak to dokladnie zastowowac, bo ja na razie slaby jestem z Pascala.

Tu masz kod :

Program xcxc;

uses wincrt;


var
i,j,x,a,b : integer;

tablica, tablica2 : array [0..10] of byte;
tablica3 : array [0..20] of byte;



begin
clrscr;

randomize;

for i:=1 to 10 do
tablica:=random(25);
writeln('tablica pierwsza jest nieposortowana');

for i:=1 to 10 do
write (tablica, ' ');
readln;
writeln;



for a:=2 to 10 do
tablica2[a]:=random(25);
writeln('tablica druga jest nieposortowana');

for a:=2 to 10 do
write (tablica2[a], ' ');
readln;
writeln;
‹poczatek sortowania›

for i:=2 to 10 do

begin

x:=tablica;
tablica[0]:=x;
j:=i-1;
while x<tablica[j] do

begin
tablica[j+1]:=tablica[j];
j:=j-1;
end;

tablica[j+1]:=x

end;

for a:=2 to 10 do

begin

x:=tablica2[a];
tablica2[0]:=x;
j:=a-1;
while x<tablica2[j] do

begin
tablica2[j+1]:=tablica2[j];
j:=j-1;
end;

tablica2[j+1]:=x

end;

writeln('pierwsza tablica zostala posortowana:');

for i:=1 to 10 do
write (tablica, ' ');
readln;
writeln;

writeln('druga tablica zostala posortowana:');

for a:=1 to 10 do
write (tablica2[a], ' ');
readln;
writeln;

tablica3 /tu ma byc ta tablica/



end.

28.03.2004
19:54
[9]

_Robo_ [ Generaďż˝ ]

Maliniarz -> wlasnie 10 razy podstawiles do 'c' 'a' a potem w to samo miejsce podstailes 10 razy 'b' :) Ale o ile dobrze rozumiem problem to jestes bardzo blisko rozwiazania :)

28.03.2004
19:54
smile
[10]

ronn [ moralizator ]

_Robo_ --> A mozesz mi napisac jakiej komendy do tego sie uzywa?
Jak juz pisalem, jestem slaby z Pascala.

28.03.2004
19:57
[11]

ronn [ moralizator ]

Normalnie wpisac ich nie moge, bo sa (do tamtych 2 tablic) wybierane losowo.

28.03.2004
19:57
smile
[12]

Maliniarz [ Konsul ]

_Robo_ - to wina watawek z kwadratowymi nawiasami :/ zebym to napisal w notatniuku wygladaloby normalnie :/

28.03.2004
20:00
[13]

Maliniarz [ Konsul ]

ronn -> zlap mnei na gg jesli chcesz to sprobuje Ci co nie co pomoc

28.03.2004
21:09
smile
[14]

ronn [ moralizator ]

Dzieki za pomoc Maliniarz!!

Program juz skonczylem, wiec jesli komus bedzie potrzebny to wklejam kod. Zmiencie tylko wincrt na crt, bo ja uzywam windowsowego kompilatora. (mozna tez usunac te 2 algorytmy sortujace 2 pierwze tabele bo i tak sa niepotrzebne)

Program Hentai;

uses wincrt;


var
i,j,x,a,b : integer;

tablica, tablica2 : array [0..10] of byte;
tablica3 : array [0..20] of byte;



begin
clrscr;

randomize;

for i:=1 to 10 do
tablica:=random(25);
writeln('tablica pierwsza jest nieposortowana');

for i:=1 to 10 do
write (tablica, ' ');
readln;
writeln;



for a:=2 to 10 do
tablica2[a]:=random(25);
writeln('tablica druga jest nieposortowana');

for a:=2 to 10 do
write (tablica2[a], ' ');
readln;
writeln;
‹poczatek sortowania›

for i:=2 to 10 do

begin

x:=tablica;
tablica[0]:=x;
j:=i-1;
while x<tablica[j] do

begin
tablica[j+1]:=tablica[j];
j:=j-1;
end;

tablica[j+1]:=x

end;

for a:=2 to 10 do

begin

x:=tablica2[a];
tablica2[0]:=x;
j:=a-1;
while x<tablica2[j] do

begin
tablica2[j+1]:=tablica2[j];
j:=j-1;
end;

tablica2[j+1]:=x

end;

writeln('pierwsza tablica zostala posortowana:');

for i:=1 to 10 do
write (tablica, ' ');
readln;
writeln;

writeln('druga tablica zostala posortowana:');

for a:=1 to 10 do
write (tablica2[a], ' ');
readln;
writeln;

for i:=1 to 10 do
tablica3:=tablica;
for i:=11 to 20 do
tablica3:=tablica2[i-10];

for i:=1 to 20 do
write(tablica3, ' ');
readln;
writeln('wczytalem dane z 2 tablic do 3');
readln;

for i:=1 to 20 do

begin
x:=tablica3;
tablica3[0]:=x;
j:=i-1;
while x<tablica3[j] do
begin
tablica3[j+1]:=tablica3[j];
j:=j-1;
end;

tablica3[j+1]:=x
end;

for i:=1 to 20 do

write(tablica3, ' ');
readln;
writeln('to 3 tablica zawierajac dane z 2 poprzednich oraz sortujaca je w sposob rosnacy');
readln;


end.

© 2000-2024 GRY-OnLine S.A.