gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
Cas01 preimenovan, dodate XDS verzije koda
[spa2-teorijske-vezbe.git] / 01. Dvosmerni Recnik / XDS / RECNIKTEST.MOD
1 MODULE RecnikTest;
3 FROM RecnikATP IMPORT
4 String, Recnik, Inicijalizuj, Ubaci, Izbaci, Sadrzaj, Prevedi, Unisti;
5 FROM IO IMPORT
6 WrLn, WrStr, RdStr, WrCard, RdChar, WrChar, RdInt;
9 VAR
10 R: Recnik;
11 Rec, Prevod: String;
12 Izbor: CHAR;
13 Izb : INTEGER;
14 Ok, Duplikat, Domaca, StrNaDom: BOOLEAN;
16 PROCEDURE Clr(r : CARDINAL);
17 VAR
18 i : CARDINAL;
19 BEGIN
20 FOR i:=1 TO r DO
21 WrLn;
22 END;
23 END Clr;
25 PROCEDURE Clear();
26 BEGIN
27 Clr(40);
28 END Clear;
30 PROCEDURE Meni(VAR Izbor: CHAR);
31 TYPE
32 Slova = SET OF CHAR;
33 VAR
34 i: CARDINAL;
35 BEGIN
36 Clear;
37 FOR i:= 1 TO 8 DO
38 WrLn;
39 END;
40 WrStr(' P --- prevod reci'); WrLn;
41 WrStr(' B --- broj reci u recniku'); WrLn;
42 WrStr(' U --- ubacivanje nove reci i njenog prevoda u recnik'); WrLn;
43 WrStr(' I --- izbacivanje reci i njenog prevoda iz recnika'); WrLn;
44 WrStr(' S --- sekvencijalni prikaz recnika'); WrLn;
45 WrStr(' Q --- kraj rada');
46 Clr(7);
47 REPEAT
48 Izbor:= CAP(RdChar());
49 UNTIL Izbor IN Slova {'P', 'B', 'U', 'I', 'S', 'Q'};
50 Clear;
51 END Meni;
53 PROCEDURE Pauza;
54 VAR
55 c: CHAR;
56 BEGIN
57 WrLn;
58 WrStr('Enter za nastavak');WrLn;
59 (* visak RdChar-ova zbog Entera i sl *)
60 c := RdChar();
61 c := RdChar();
62 c := RdChar();
63 END Pauza;
65 BEGIN
66 Inicijalizuj(R);
67 REPEAT
68 Meni(Izbor);
69 CASE Izbor OF
70 'P': REPEAT
71 WrStr('1) prevod strane reci'); WrLn;
72 WrStr('2) prevod domace reci'); WrLn;
73 WrLn;
74 WrStr("Unesite '1' ili '2' --- ");
75 Izb:= RdInt();
76 WrLn;
77 UNTIL (Izb = 1) OR (Izb = 2);
78 StrNaDom:= Izb = 1;
79 IF StrNaDom THEN
80 WrStr('Unesite stranu rec ---- ');
81 RdStr(Rec);
82 Prevedi(StrNaDom, Rec, Prevod, R, Ok);
83 IF Ok THEN
84 WrStr('Prevod ---------------- ');
85 WrStr(Prevod);
86 ELSE
87 WrStr('Zadata rec se ne nalazi u recniku.');
88 END;
89 ELSE
90 WrStr('Unesite domacu rec ---- ');
91 RdStr(Rec);
92 Prevedi(StrNaDom, Rec, Prevod, R, Ok);
93 IF Ok THEN
94 WrStr('Prevod ---------------- ');
95 WrStr(Prevod);
96 ELSE
97 WrStr('Zadata rec se ne nalazi u recniku.');
98 END;
99 END;
100 Pauza; |
101 'B': WrStr('Recnik raspolaze fondom od ');
102 WrCard(R.BrojReci, 1);
103 WrStr(' reci.');
104 Pauza; |
105 'U': WrStr('Unesite novu domacu rec ----- ');
106 RdStr(Rec);
107 WrStr('Unesite njen prevod -------- ');
108 RdStr(Prevod);
109 Ubaci(Rec, Prevod, R, Duplikat);
110 IF Duplikat THEN
111 WrStr('U recniku se vec nalazi data rec.');
112 ELSE
113 WrStr('Upisano.');
114 END;
115 Pauza; |
116 'I': WrStr('Unesite rec --- ');
117 RdStr(Rec);
118 REPEAT
119 WrStr('uneta rec je'); WrLn;
120 WrStr('1) strana'); WrLn;
121 WrStr('2) domaca'); WrLn;
122 WrLn;
123 WrStr("Unesite '1' ili '2' --- ");
124 Izb:= RdInt();
125 WrLn;
126 UNTIL (Izb = 1) OR (Izb = 2);
127 Domaca:= Izb = 1;
128 Izbaci(Rec, R, Domaca, Ok);
129 IF Ok THEN
130 WrStr('Izbrisano.')
131 ELSE
132 WrStr('Rec se nije ni nalazila u recniku.')
133 END;
134 Pauza; |
135 'S': Sadrzaj(R);
136 Pauza|
137 ELSE ;
138 END;
139 UNTIL Izbor = 'Q';
140 Unisti(R);
141 END RecnikTest.
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner