Az alábbi letöltési lehetőségek közül választhatsz: (
segítség)
Típus: text/plain
Tartalmaz szöveget
Karakterkódolás: us-ascii
Méret: 2 KB
PROGRAM chk0;
CONST
maxido = 1440;
VAR
inputFile, outputFile: STRING;
elist: ARRAY [1..1000] OF BOOLEAN;
esem: ARRAY [1..1000] OF RECORD
a, b: INTEGER;
END;
tesm: ARRAY [1..1000] OF INTEGER;
simult: ARRAY [1..maxido + 1] OF INTEGER;
max: INTEGER;
jo: BOOLEAN;
PROCEDURE GetMax();
VAR
i, cur: INTEGER;
BEGIN
cur:= 0;
FOR i:= 1 TO maxido DO
BEGIN
cur:= cur+simult[i];
IF (i = 1) OR (cur > max) THEN max:= cur;
IF cur < 0 THEN
BEGIN
WriteLn('belso hiba');
END;
END;
END;
PROCEDURE Main;
VAR
be, ki: Text;
N, T, i, nr, j, k, x, y: INTEGER;
ch: CHAR;
BEGIN
jo:= TRUE;
Assign(be, inputFile);
Reset(be);
IF IOResult <> 0 THEN
BEGIN
WriteLn('nem tudom megnyitni: ', inputFile);
HALT;
END;
ReadLn(be, N);
FOR i:= 1 TO N DO
BEGIN
simult[i]:= 0;
END;
FOR i:= 1 TO N DO
BEGIN
ReadLn(be, esem[i].A, esem[i].B);
INC( simult[ esem[i].A ] );
DEC( simult[ esem[i].B+1 ] );
elist[i]:= FALSE;
END;
Close(be);
GetMax();
Assign(ki, outputFile);
Reset(ki);
IF IOResult <> 0 THEN
BEGIN
WriteLn('nem tudom megnyitni: ', outputFile);
HALT;
END;
ReadLn(ki, T);
IF T <> max THEN
BEGIN
WriteLn('a felhasznalt termek szama: ', T, ' (',max,' lenne a helyes)'); jo:= FALSE;
END;
FOR i:= 1 TO T DO
BEGIN
nr:= 0;
WHILE NOT Eoln(ki) DO
BEGIN
INC(nr);
Read(ki, tesm[nr]);
IF elist[tesm[nr]] = TRUE THEN
BEGIN
WriteLn('ketszer szerepel beosztva: ', tesm[nr]); jo:= FALSE;
END;
elist[tesm[nr]]:= TRUE;
Read(ki, ch);
IF ch <> ' ' THEN BREAK;
END;
ReadLn(ki);
FOR j:= 1 TO nr DO
BEGIN
FOR k:= j+1 TO nr DO
BEGIN
x:= tesm[j]; y:= tesm[k];
IF ((esem[x].A <= esem[y].A) AND (esem[y].A <= esem[x].B)) OR
((esem[x].A <= esem[y].B) AND (esem[y].B <= esem[x].B)) THEN
BEGIN
WriteLn('utkozik: ', x, ' ', y);
jo:= FALSE;
END;
END;
END;
END;
Close(ki);
FOR i:= 1 TO N DO
BEGIN
IF elist[i] = FALSE THEN
BEGIN
WriteLn('Nincs beosztva: ', i);
jo:= FALSE;
END;
END;
IF jo THEN
BEGIN
WriteLn('helyes megoldas');
END;
END;
BEGIN
IF ParamCount = 2 THEN
BEGIN
inputFile:= ParamStr(1);
outputFile:= ParamStr(2);
END
ELSE
BEGIN
WriteLn('hasznalat: check teremX.be teremX.ki');
WriteLn('a fajlokat most is megadhatod:');
Write('A bementi fajl: '); ReadLn(inputFile);
Write('A kimeneti fajl: '); ReadLn(outputFile);
END;
WriteLn('[', inputFile, '--', outputFile,']');
Main;
END.