achtung303c Posted January 5, 2013 Report Share Posted January 5, 2013 Witam,mam do napisania taki programik: "c.5 Stos na klasach (wierzchołek ST typu PStos, PStos=^TStos;) Dane:Liczba rzeczywista Operacje: a)Wkładanie na stos,zdejmowanie ze stosu; b)dodawanie,odejmowanie, mnożenie i dzielenie liczb z wierzchołka stosu: np function dodaj(a,b: Double): double. W programie głównym wykonać ciąg operacji z godnie z zasadą odwrotenj notacji polskiej." I już od paru dni mam z nim problem do tej pory udało mi się wykonać podpunkt a, lecz ciagle mam problem z podpunktem b,byłbym wdzięczny za jakąkolwiek pomoc. Oto co do tej pory mi się udało napisać program project1; uses crt; var co:char; n:integer; type PStos = ^TStos; TStos = class Liczba: Byte; Nastepny: PStos; end; procedure Usun(var Pocz: PStos); var Pom: PStos; begin Pom := Pocz^.Nastepny; Dispose(Pocz); Pocz := Pom; end; procedure DodajS(var Pocz: PStos; Liczba: Byte); var Nowy: PStos; begin New(Nowy); Nowy^.Liczba := Liczba; Nowy^.Nastepny := Pocz; Pocz := Nowy; end; procedure Wypisz(Pocz: PStos); var i: integer; begin while Pocz <> nil do begin WriteLn(i,':' ,Pocz^.Liczba); Pocz := Pocz^.Nastepny; i:=i+1; end; end; var Pocz: PStos; Liczba: Byte; code: Integer; begin new(Pocz); repeat clrscr; writeln('d - dodaj do stosu'); writeln('u - usun element ze stosu '); writeln('w - wypisz stos'); writeln('q - koniec'); co:=readkey; case co of 'd': begin write('podaj wartosc: '); readln (n); DodajS(Pocz ,n); end; 'u': begin usun(Pocz); end; 'w': begin wypisz(Pocz); co:=readkey; end; end; until co='q'; end. Link to comment Share on other sites More sharing options...
Blind Posted January 8, 2013 Report Share Posted January 8, 2013 Dawno delphi nie używałem ale: 1) Klasa juz jest wskaznikiem, tak więc New(Nowy); utworzy wskaznik do klasy (4bajty). reszta operacji zrobi tylko sieczke z pamieci. 2) Klasy tworz tak jak sie powinno tworzyc 3) procedure Usun(var Pocz: PStos); - var jest zbedne Podsumowanie: Nie masz pojęcia o uzywaniu klas, radze sięgnąć po podstawy. www.blinder.pl - Blog Link to comment Share on other sites More sharing options...
babubabu Posted January 8, 2013 Report Share Posted January 8, 2013 Dawno delphi nie używałem ale: 1) Klasa juz jest wskaznikiem, tak więc New(Nowy); utworzy wskaznik do klasy (4bajty). reszta operacji zrobi tylko sieczke z pamieci. 2) Klasy tworz tak jak sie powinno tworzyc 3) procedure Usun(var Pocz: PStos); - var jest zbedne Podsumowanie: Nie masz pojęcia o uzywaniu klas, radze sięgnąć po podstawy. To samo mu powiedzieli na innym forum, a na jeszcze innym dostał gotowca Moim zdaniem temat mozna zamknąć. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.