31.Prednaska/Cvicenie
Z Pascal
31. Cvičenie
< 31.Prednáška | riešené úlohy
Cvičenie
- zadaný graf ako obrázok na tabuli zapísať do rôznych reprezentácií - orientovaný/neorientovaný, neohodnotený/ohodnotený - najprv na tabuli
- pole množín
- matica susedností
- pole polí susedov
- graf zapísať do textového súboru a potom prečítať do rôznych reprezentácií, v súbore sú v každom riadku
- dvojice čísel spojených vrcholov
- číslo vrcholu, súradnice, zoznam čísel susedov
- buď vrchol (meno a súradnice) alebo hrana (dve mená + váha)
- súradnice dvoch spojených vrcholov (x1, Y1, x2, y2), prípadne k tomu aj váha
- prečítali sme neorientovaný graf ale niektoré hrany sú pritom len jedným smerom - treba doplniť
- vykresliť graf (metódy napr. KresliVrchol, KresliHranu) - aj ohodnotený graf
- prevod grafu z jednej do druhej reprezentácie
Domáca úloha
1. naprogramovať zadávanie vrcholov a hrán grafu klikaním do grafickej plochy (Image1MouseDown)
- kliknutie na prázdne miesto plochy pridá nový vrchol (nakreslí krúžok)
- kliknutie na existujúci vrchol ho zafarbí
- kliknutie na druhý ešte nezafarbený vrchol ho spojí so zafarbeným (ak už bolo spojenie, tak rozpojí)
- kliknutie na zafarbený vrchol ho odfarbí
2. pre nakreslený graf umožní ťahanie vrcholov (Image1MouseDown, Image1MouseMove, Image1MouseUp)
- pri presúvaní vrcholu prekresľovať celý graf