Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- with Ada.Text_IO; use Ada.Text_IO;
- --All cred för denna går till Markus Larsson <3
- procedure Traffic_Light is
- procedure Print_Diods (Color : in Character; Number_Of_Lights : in Integer) is --Skriver ut dioderna som
- --ska vara tända
- --parametrarna är färg och antal dioder
- begin
- for I in 1..Number_Of_Lights loop
- Put(Color);
- end loop;
- end Print_Diods;
- procedure Print_Bulb(Color : in Character) is --Skriver ut de rader som rör lampan
- --paramtern visar vilken färg dioderna ska lysa i
- begin
- Put("|/");
- Print_Diods(Color, 4);
- Put_Line("\|");
- for I in 1..2 loop
- Put("|");
- Print_Diods(Color, 6);
- Put_Line("|");
- end loop;
- Put("|\");
- Print_Diods(Color, 4);
- Put_Line("/|");
- end Print_Bulb;
- procedure Check_Bulb(Lit : in Boolean; Color : in Character) is --Kontrollerar om lampan är tänd eller ej.
- --parametrar är om lampan ska vara tänd
- --samt färg
- begin
- if Lit = True then
- Print_Bulb(Color);
- else
- Print_Bulb('.');
- end if;
- end Check_Bulb;
- procedure Print_Light(R, Y, G : in Boolean) is --Skriver ut ramen för trafikljuset, parametrarna är
- --vilka lampor som ska tändas/släckas
- begin
- Put_Line(" ______ ");
- Put_Line("/ ____ \");
- Check_Bulb(R, 'R');
- Put_Line("| |");
- Check_Bulb(Y, 'Y');
- Put_Line("| |");
- Check_Bulb(G, 'G');
- Put_Line("\ ____ /");
- Put_Line(" || ");
- end Print_Light;
- begin
- Print_Light(True, False, False);
- Print_Light(False, True, False);
- Print_Light(False, False, True);
- Print_Light(True, True, False);
- Print_Light(False, True, True);
- end Traffic_Light;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement