Added Already Existing scripts
parent
6d554ce450
commit
7955920e74
@ -0,0 +1,149 @@
|
|||||||
|
program login;
|
||||||
|
|
||||||
|
uses
|
||||||
|
md5, crt;
|
||||||
|
|
||||||
|
type
|
||||||
|
CONNECTION = record
|
||||||
|
hotel : string;
|
||||||
|
distance : integer;
|
||||||
|
end;
|
||||||
|
|
||||||
|
HOTEL = record
|
||||||
|
name : string;
|
||||||
|
conn : CONNECTION;
|
||||||
|
end;
|
||||||
|
|
||||||
|
USER = record
|
||||||
|
un: string;
|
||||||
|
pw: string;
|
||||||
|
l: boolean;
|
||||||
|
end;
|
||||||
|
|
||||||
|
const
|
||||||
|
users: array [0..4] of USER = (
|
||||||
|
(un: 'user1'; pw: '16d7a4fca7442dda3ad93c9a726597e4'; l: false),
|
||||||
|
(un: 'user2'; pw: 'ccd2fc33d2d423d7209035dbfff82b29'; l: false),
|
||||||
|
(un: 'user3'; pw: '57c2877c1d84c4b49f3289657deca65c'; l: false),
|
||||||
|
(un: 'user4'; pw: '4101bef8794fed986e95dfb54850c68b'; l: false),
|
||||||
|
(un: 'root'; pw: '63a9f0ea7bb98050796b649e85481845'; l: false)
|
||||||
|
);
|
||||||
|
hotels: array [0..4] of HOTEL = (
|
||||||
|
(name: 'Hotel 1'; conn: (hotel: 'Hotel 2'; distance: 11)),
|
||||||
|
(name: 'Hotel 2'; conn: (hotel: 'Hotel 3'; distance: 5)),
|
||||||
|
(name: 'Hotel 3'; conn: (hotel: 'Hotel 4'; distance: 11)),
|
||||||
|
(name: 'Hotel 4'; conn: (hotel: 'Hotel 5'; distance: 5)),
|
||||||
|
(name: 'Hotel 5'; conn: (hotel: ''; distance: 0))
|
||||||
|
);
|
||||||
|
|
||||||
|
var
|
||||||
|
readinput: string;
|
||||||
|
i, j, distance_total, hnum1, hnum2: integer;
|
||||||
|
correct, exit: boolean;
|
||||||
|
usersuccess: boolean = false;
|
||||||
|
velocity, time: real;
|
||||||
|
|
||||||
|
{ Calculates the total distance between hotels based on the hotel number input.
|
||||||
|
(Only numbers accepted!). After printing the total distance a velocity can be
|
||||||
|
input to calculate the estimated time. }
|
||||||
|
procedure hotelmain;
|
||||||
|
var
|
||||||
|
i : integer;
|
||||||
|
begin
|
||||||
|
while exit = false do
|
||||||
|
begin
|
||||||
|
distance_total := 0;
|
||||||
|
for i := 0 to 4 do
|
||||||
|
begin
|
||||||
|
distance_total += hotels[i].conn.distance
|
||||||
|
end;
|
||||||
|
Writeln('Total tour length: ', distance_total, ' km');
|
||||||
|
Write('First Hotel Number: ');
|
||||||
|
ReadLn(hnum1);
|
||||||
|
Writeln;
|
||||||
|
Write('Second Hotel Number: ');
|
||||||
|
ReadLn(hnum2);
|
||||||
|
|
||||||
|
If ((hnum1 <= 5) and (hnum2 <= 5)) then
|
||||||
|
begin
|
||||||
|
distance_total := 0;
|
||||||
|
if (hnum1 > hnum2) then
|
||||||
|
for i := (hnum1-2) downto (hnum2-1) do
|
||||||
|
distance_total := distance_total + hotels[i].conn.distance
|
||||||
|
else
|
||||||
|
for i := (hnum1-1) to (hnum2-2) do
|
||||||
|
distance_total := distance_total + hotels[i].conn.distance;
|
||||||
|
Writeln('Distance between hotels is ', distance_total);
|
||||||
|
Write('Velocity (km/h): ');
|
||||||
|
ReadLn(velocity);
|
||||||
|
time := (distance_total / velocity);
|
||||||
|
WriteLn('Estimated Time: ', time: 10: 2, ' hours');
|
||||||
|
end;
|
||||||
|
Write('Exit? (y/n)');
|
||||||
|
ReadLn(readinput);
|
||||||
|
|
||||||
|
if readinput = 'y' then
|
||||||
|
exit := true
|
||||||
|
else
|
||||||
|
exit := false;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
begin
|
||||||
|
TextColor(8);
|
||||||
|
Writeln('Tourplanner');
|
||||||
|
Writeln('Written by J.Riegel.');
|
||||||
|
TextColor(White);
|
||||||
|
|
||||||
|
{ endless loop/main loop of the program. Exit with CTRL-C }
|
||||||
|
while true do
|
||||||
|
begin
|
||||||
|
Write('User: ');
|
||||||
|
ReadLn(readinput);
|
||||||
|
usersuccess := false;
|
||||||
|
|
||||||
|
{ Iterate over all 5 user entries to find the one
|
||||||
|
that fits the input. set usersuccess to true if found
|
||||||
|
else it remains false and an user not found error
|
||||||
|
is printed to the console. }
|
||||||
|
|
||||||
|
for i := 0 to 4 do
|
||||||
|
if readinput = users[i].un then
|
||||||
|
begin
|
||||||
|
usersuccess := true;
|
||||||
|
if (users[i].l) then
|
||||||
|
begin
|
||||||
|
TextColor(Red);
|
||||||
|
Writeln('This user is locked.');
|
||||||
|
TextColor(White);
|
||||||
|
Break;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ 3 tries for password input. Return to the username
|
||||||
|
input after failure. correct is set to true if
|
||||||
|
the loggin was a success. }
|
||||||
|
|
||||||
|
for j := 0 to 2 do
|
||||||
|
begin
|
||||||
|
WriteLn('Password: ');
|
||||||
|
ReadLn(readinput);
|
||||||
|
|
||||||
|
if MD5Print(MD5String(readinput)) = users[i].pw then
|
||||||
|
begin
|
||||||
|
WriteLn('Login Successful!');
|
||||||
|
correct := true;
|
||||||
|
Break;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
WriteLn('Wrong password! ', 2 - j, ' trys left.');
|
||||||
|
end;
|
||||||
|
{ @section userfunctions }
|
||||||
|
if correct = true then
|
||||||
|
hotelmain()
|
||||||
|
else
|
||||||
|
users[i].l := true;
|
||||||
|
end;
|
||||||
|
if usersuccess = false then
|
||||||
|
WriteLn('User not found');
|
||||||
|
end;
|
||||||
|
end.
|
@ -0,0 +1,23 @@
|
|||||||
|
program arithmetictest;
|
||||||
|
const
|
||||||
|
val1 = 3;
|
||||||
|
val2 = 1.0;
|
||||||
|
var res1 : EXTENDED;
|
||||||
|
res2 : EXTENDED;
|
||||||
|
begin
|
||||||
|
res1 := sqrt(3)*sqrt(3);
|
||||||
|
WriteLn(val1, ' ', res1);
|
||||||
|
if val1 = res1
|
||||||
|
then
|
||||||
|
WriteLn('val1 and res1 are the same')
|
||||||
|
else
|
||||||
|
WriteLn('val 1 and res1 are not the same');
|
||||||
|
res2 := (1.0/49)*49;
|
||||||
|
WriteLn(val2, ' ', res2);
|
||||||
|
if val2 = res2
|
||||||
|
then
|
||||||
|
WriteLn('val2 and res2 are the same')
|
||||||
|
else
|
||||||
|
WriteLn('val2 and res2 are not the same');
|
||||||
|
WriteLn(10e4933);
|
||||||
|
end.
|
@ -0,0 +1,17 @@
|
|||||||
|
program casetest;
|
||||||
|
|
||||||
|
var
|
||||||
|
input: integer;
|
||||||
|
|
||||||
|
begin
|
||||||
|
ReadLn(input);
|
||||||
|
case (input) of
|
||||||
|
0..49 : WriteLn('kleiner 49');
|
||||||
|
50..52 : WriteLn('50 - 52');
|
||||||
|
else
|
||||||
|
if (input < 0) then
|
||||||
|
Writeln('kleiner 49')
|
||||||
|
else
|
||||||
|
WriteLn('groesser 52');
|
||||||
|
end;
|
||||||
|
end.
|
@ -0,0 +1,8 @@
|
|||||||
|
program helloworld;
|
||||||
|
|
||||||
|
const msg = 'Hello World!';
|
||||||
|
|
||||||
|
begin
|
||||||
|
WriteLn(msg);
|
||||||
|
ReadLn;
|
||||||
|
end.
|
@ -0,0 +1,9 @@
|
|||||||
|
program numbers;
|
||||||
|
var
|
||||||
|
i: integer;
|
||||||
|
begin
|
||||||
|
for i := 1 to 10 do
|
||||||
|
begin
|
||||||
|
WriteLn(i, ' ', i*i);
|
||||||
|
end;
|
||||||
|
end.
|
@ -0,0 +1,10 @@
|
|||||||
|
program pinumber;
|
||||||
|
const
|
||||||
|
pi = 3.14159;{definiert als EXTENDED}
|
||||||
|
var
|
||||||
|
piSecond : extended;
|
||||||
|
begin
|
||||||
|
WriteLn('Pi ist definiert als ', pi);
|
||||||
|
piSecond := pi;
|
||||||
|
WriteLn(piSecond);
|
||||||
|
end.
|
@ -0,0 +1,17 @@
|
|||||||
|
program producttable;
|
||||||
|
|
||||||
|
var
|
||||||
|
table: array [0..20, 0..20] of integer;
|
||||||
|
i, j: integer;
|
||||||
|
|
||||||
|
begin
|
||||||
|
for i := 0 to 20 do
|
||||||
|
begin
|
||||||
|
for j := 0 to 20 do
|
||||||
|
begin
|
||||||
|
table[i, j] := i*j;
|
||||||
|
Write(table[i, j] : 3, ' ');
|
||||||
|
end;
|
||||||
|
Writeln;
|
||||||
|
end;
|
||||||
|
end.
|
@ -0,0 +1,26 @@
|
|||||||
|
program squares;
|
||||||
|
|
||||||
|
var
|
||||||
|
i : integer;
|
||||||
|
|
||||||
|
begin;
|
||||||
|
for i := 0 to 20 do
|
||||||
|
Write(i*i, ' ');
|
||||||
|
Writeln;
|
||||||
|
|
||||||
|
i := 0;
|
||||||
|
while i <= 20 do
|
||||||
|
begin
|
||||||
|
Write(i*i, ' ');
|
||||||
|
i := i+1;
|
||||||
|
end;
|
||||||
|
Writeln;
|
||||||
|
|
||||||
|
i := 0;
|
||||||
|
repeat
|
||||||
|
begin
|
||||||
|
Write(i*i, ' ');
|
||||||
|
i := i+1;
|
||||||
|
end;
|
||||||
|
until i > 20;
|
||||||
|
end.
|
Loading…
Reference in New Issue