Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program rozhodovaciStrom;
- type TypUkStrom = ^Strom;
- Strom = record;
- Otazka : string;
- Ano : TypUkStrom;
- Ne : TypUkStrom;
- Pocet : integer;
- odpoved = record
- pocet: word;
- nazev: string
- end;
- function projdi(s: TypUkStrom): odpoved;
- var levaO, pravaO : odpoved;
- begin
- //vynuluju si hodnoty, kdyby náhodou uzel obsahoval jen jednoho potomka
- levaO.pocet := -1;
- pravaO.pocet := -1;
- if s.Ne<> nil then begin
- levaO := projdi(s^.Ne);
- end;
- if s.Ano<> nil then begin
- pravaO := projdi(s^.Ano);
- end;
- //porovnam si pocty zavad a vrátím jen závadu která má největší počet
- if levaO.pocet > pravaO.pocet {
- projdi := levaO;
- } else {
- projdi := pravaO;
- }
- end;
- var o : odpoved;
- begin
- //predpokladam naplneny strom
- odpoved := projdi(strom);
- writeln('nejcastejsi zavada ma nazev:', odpoved.nazev);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement