WITH Ada.Text_IO, Ada.Integer_Text_IO;
use Ada.Text_IO, Ada.Integer_Text_IO;
PROCEDURE Prog1 IS
--------------------------
TYPE Rasy_Krow IS (czarna, czerwona, holenderska);
TYPE Krowa IS RECORD
Rasa: Rasy_Krow;
Waga: Positive;
Ilelat: Natural;
Imie: String(1..20):=(others=>' ');
END RECORD;
type stado is array(integer range <>) of krowa;
---------------------------
PACKAGE RKIO IS NEW Enumeration_Io(Rasy_Krow);
use rkio;
----------------------------
PROCEDURE wypisz(x: in krowa) is
BEGIN
Put("Krowa rasy: ");
Put(X.Rasa,0);new_line;
Put("Waga: ");
Put(X.waga,0);new_line;
Put("Lat: ");
Put(X.ilelat,0);new_line;
Put("Imie: ");
Put(X.imie);new_line;
END wypisz;
---------------------------
PROCEDURE pobierz(X: out Krowa) IS
n: integer;
BEGIN
Put("Podaj: ");
new_line;
put("1)Rasa(czarna, czerowna, holenderska): ");
get(x.rasa);
put("2)waga: ");
get(x.waga);
put("3)Lat: ");
Get(X.ilelat);
Put("4)Imie: ");
skip_line;-- czyszczenie bufora
Get_Line(X.Imie,N);
IF N = X.Imie'length THEN Skip_Line;
end if;
END Pobierz;
---------------------------
PROCEDURE pobierzstado(X: out stado) IS
BEGIN
for i in x'range loop
Pobierz(X(I));
end loop;
END Pobierzstado;
PROCEDURE wypiszstado(X: in stado) IS
BEGIN
for i in x'range loop
Wypisz(X(i));
end loop;
END wypiszstado;
K: Krowa;
ilosc: integer;
BEGIN
Put("Ile krow? " );
Get(Ilosc);
DECLARE
St: Stado(1..Ilosc);
BEGIN
Pobierzstado(st);
new_line;
Put("[Enter]");
Skip_Line;
new_line;
Wypiszstado(st);
end;
END Prog1;
Wyszukiwarka
Podobne podstrony:
27 02 2014 Terminologia DługoszPentagon zmieni kryptonim operacji w Iraku z Iracka Wolność na Jutrzenka (19 02 2010)WF Irok Aniony 13 02 2014 doc2014 Matura 02 2014 IIEGZAMIN 02 2014Baghdad Bureau (blog) Muntader’s Moment (19 02 2009)19 02 Zasady wyboru podwykonawcow i dostawcowĆwiczenia 4 19 01 201419 02 W Hydraulika i hydrologia19 02 08 sem IButami w Busha odroczono proces dziennikarza (19 02 2009)Ćwiczenia 5, 6 26 01, 1 02 2014więcej podobnych podstron