|
www.ispwsznysa.fora.pl Informatyka Stosowania PWSZ NYSA
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
stramik
Administrator
Dołączył: 02 Gru 2007
Posty: 126
Przeczytał: 0 tematów
Skąd: Grodków
|
Wysłany: Pon 10:56, 09 Cze 2008 Temat postu: Program z kola u Trawki z ASD |
|
|
Niestety nie mam tresci chyba na kompie, bo nie moge jej znalezc, wiec jesli ktos pamieta to niech napisze
Kod: | program ASD_MatejaszekLeszek_Ter0;
{$APPTYPE CONSOLE}
uses
SysUtils;
const
max = 110;
type
TTab = array[1..MAX] of integer;
wsk = ^wezel;
wezel = record
s : integer;
l : wsk;
r : wsk;
end;
TWsk = ^TLista;
TLista = record
ile : integer;
nas,pop : Twsk;
end;
procedure LosujDane(var t : TTab);
var i : integer;
begin
for i:=1 to MAX do t[i]:=random(901)+100;
end;
procedure WstawDoDrzewa(var p : wsk; x : integer);
begin
if p = nil then
begin
new(p);
p^.s:=x;
p^.l:=nil;
p^.r:=nil;
end
else
begin
if x < p^.s then WstawDoDrzewa(p^.l,x)
else WstawDoDrzewa(p^.r,x);
end;
end;
procedure KopiujDoDorzewa(t : ttab; var d : wsk);
var i : integer;
begin
for i:=1 to MAX do
begin
if (t[i] mod 2 = 1) or (t[i] < 500) then WstawDoDrzewa(d,t[i]);
end;
end;
procedure dzialajnadzrewie(d : wsk);
var
suma : integer;
procedure dzialaj(p : wsk);
begin
suma:=suma + p^.s;
if p^.l <> nil then dzialaj(p^.l);
if p^.r <> nil then dzialaj(p^.r);
end;
begin
suma:=0;
dzialaj(d);
writeln('Suma=',suma);
end;
procedure dodajdolisty(var pocz : TWsk; d : integer);
var
ndata : TWsk;
begin
New(ndata);
if ndata = nil then exit;
ndata.ile:=d;
ndata.nas:=pocz;
pocz:=ndata;
pocz.pop:=nil;
end;
procedure kopujdolisty(t : ttab; var list : TWsk);
var i : integer;
begin
for i:=1 to MAX do dodajdolisty(list,t[i]);
end;
procedure dzialajnaliscie(pocz : twsk);
var suma:integer;
begin
suma:=0;
while (pocz <> nil) do
begin
if (pocz.ile mod 3 = 0) then suma:= suma + pocz.ile;
pocz:=pocz.nas;
end;
end;
procedure sortowanie(var t : ttab);
var temp,i,j : integer;
begin
for i:=1 to MAX-1 do
for j:=1 to MAX-1 do
if t[i] > t[i+1] then
begin
temp:=t[i];
t[i]:=t[i+1];
t[i]:=temp;
end;
end;
var
tab: ttab;
drzewo : wsk;
lista : twsk;
begin
losujdane(tab);
KopiujDoDorzewa(tab,drzewo);
dzialajnadzrewie(drzewo);
kopujdolisty(tab,lista);
dzialajnaliscie(lista);
sortowanie(tab);
{ TODO -oUser -cConsole Main : Insert code here }
end.
|
|
|
Powrót do góry |
|
|
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Mardok
Gaduła
Dołączył: 09 Gru 2007
Posty: 91
Przeczytał: 0 tematów
|
Wysłany: Pon 11:20, 09 Cze 2008 Temat postu: |
|
|
Treść masz na pulpicie tam skopiowałem wszystkie TXT bodajże nazwa to "Leszek.txt" albo "Od Leszka.txt" Szukaj po prawej
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
stramik
Administrator
Dołączył: 02 Gru 2007
Posty: 126
Przeczytał: 0 tematów
Skąd: Grodków
|
Wysłany: Pon 18:33, 09 Cze 2008 Temat postu: |
|
|
faktycznie slepy jestem
_______________________________
Zadeklaruj stałą o nazwie "Max"równą 110 .Zadeklaruj jako własny typ danych
o rozmiarze''TTab" tablicę statyczną o roamiarze określonym przez stałą max zawierającą
dane o typie integer.
Zadeklaruj zmienną ''Tab" w typie ''TTab"jako zmienną globalną ale widzianą tylko w programie głównym
w procedurach i funkcjach zmienna ma być widoczna.
Napisz procedurę o nazwie ''Losujdane", która wylosuje dane z zakresu od 1000 do 100. Tablica ma być
do procedury przekazana jako parametr.
Napisz procedurę o nazwie ''Kopiujdodrzewa", która wybierze z tablicy statycznej wszystkie liczby
nieparzyste oraz mniejsze od 500 i wstawi je do dynamicznego dzrzewa binarnego.
W tym zadaniu trzeba będzie dopisać procedurę odpowiedzialną za wstawienie elementów na dzrewo.
Wszystkie konieczne mają być przekazywane do procedur jako parametry.
Napisz procedurę o nazwie ''Działaj na drzewie", która policzy sumę wszystkich elementów na dzrewie.
.Wszystkie konieczne dane mają być przekazywane do procedur jako parametry.
Napisz procedurę o nazwie kopiuj do listy, która wybierze z tablicy statycznej
wszystkie liczby parzyste i wstawi je na koniec dynamicznej nieuporządkowanej listy dwukierunkowej(elementy mogą się powtarzać)
.W tym zadaniu trzeba napisać procedurę odpowiedzialną za wstawianie elementów na listę .Wszystkie konieczne dane mają być przekazywane do procedur jako
parametr.Napisz procedurę o nazwie ''Działaj na liście" zsumuje wartości elementów całkowicie podzielnych przez 3 utworzonej listy
Napisz procedurę o nazwie ''Sortowanie" która sortuje dane w tablicy statycznej metodą bombelkową w kolejności malejącej.
Tablica ma być do procedury przekazywana jako parametr
Napisz procedurę wyświetlającą tablicę statyczną w rzędach po 10elementów.Tablica ma być do procedury przek.jako par.
Napisz prog główny uruchamiający wszystkie napisane procedury kolejności numeracji.
Prog nie musi mieć menu ani pytać o cokolwiek użytkownika.
|
|
Powrót do góry |
|
|
|
|
Możesz pisać nowe tematy Możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2005 phpBB Group
|