|
|
topWebHamster |
|
Grundlagen der Sprache |
|
einige grundlegende Erläuterungen findet ihr hier: (/www.taucherspage.de.vu/)
|
|
DIRSIZE - Ermittlung des Speicherbedarfs von Verzeichnissen |
Verzeichnisse (Directory) heißen neudeutsch "Ordner".
Die Ermittlung des Speicherbedarfs war damals (1991) noch ein echtes Problem - man mußte mühselig jedes Verzeichnis auslesen und addieren.
Abhilfe schaffte erst der Norton Commander 5 (1996) mit <CTRL>+<L> - heute ist das mit dem Explorer kein Problem mehr.
Das Programm läuft in englisch, deutsch, catalá und castellano ("spanisch"). In der ASC Datei finden sich die Texte in den 4 Sprachen.
|
|
OFGER - Strömungsgeschwindigkeit in offenen Gerinnen |
|
Je nach Querschnittsprofil, Oberflächenbeschaffenheit und Längstneigung ändert sich die Strömungsgeschwindigkeit - Programm läuft unter DOS oder im DOS Fenster
|
|
KRYPT - Kodieren von Dateien und Verzeichnissen unter DOS |
Das Programm entstand 1991 für meinen damaligen Arbeitgeber, deshalb sind die Meldungen spanisch...
Damals hatten wir Angst, Zeichnungen unverschlüsselt durch's Netz zu schicken ;-)
Interessant sind hier vor allem die XOR Funktionen in der Procedure !
{$B- | Eingabe nach Standard-Pascal}
{$R- | Keine Index Bereichspruefung beim Programmlauf}
{$I-}
PROGRAM krypt;
USES crt;
{
Programm verschlüsselt beliebige Datei mit frei wählbarem Kodewort.
Datei kann durch erneuten Programmlauf mit gleichem Kodewort wieder
entschlüsselt werden ("XOR-Charakteristik")
(c) 1991 R. Roletschek, Barcelona
}
TYPE puffer = ARRAY[1..128] OF byte;
kodewort = string[20];
VAR block:puffer;
dateiname:string[14];
datei:file;
i:integer;
vkodewort:kodewort;
gefunden:boolean;
PROCEDURE kodieren(VAR block:puffer; vkodewort:kodewort);
VAR j, k, index:byte;
BEGIN; { of procedure}
FOR j:=0 TO 127 DIV LENGTH(vkodewort) DO
FOR k:=1 TO LENGTH(vkodewort) DO
BEGIN;
index:=j*LENGTH(vkodewort)+k;
IF index IN[1..128] THEN
IF ODD(j)
THEN block[index]:=block[index]
XOR (ORD(vkodewort[k]) SHR 1) XOR lo (j*j)
ELSE block[index]:=block[index]
XOR (ORD(vkodewort[k]) SHL 1) XOR lo (j*j)
END;
END; { of procedure}
BEGIN { main }
clrscr;
writeln('--- krypto 3 --- versió 2.0. (c) R. Roletschek 1991');
REPEAT; { .. until gefunden }
writeln; { ñ164 Ñ165 ¿168 ¡173 }
write(' ¿ nombre de fichero ? ');
readln(dateiname);
writeln;
writeln;
write(' ¿ nombre codigo ? ');
readln(vkodewort);
writeln;
writeln;
IF LENGTH(vkodewort)=0 THEN halt;
FOR i:= 1 TO LENGTH(vkodewort) DO
vkodewort[i]:= CHR(NOT ORD(vkodewort[i]));
ASSIGN(datei, dateiname);
RESET(datei);
gefunden:=(ioresult=0) AND (filesize(datei)>0);
IF NOT gefunden THEN writeln('¡ fichero no est !');
UNTIL gefunden;
writeln('por favor unos segundos ...');
writeln;
writeln('Per K de fichero cerca 4 segundos necesitario.');
writeln;
FOR i:=0 TO filesize(datei)-1 DO
BEGIN;
blockread(datei, block, 1);
kodieren(block, vkodewort);
seek(datei, i);
blockwrite(datei, block, 1);
END;
writeln('¡ est el fin !');
writeln(' ¡ hasta luego !');
writeln; close(datei);
write ('pulsar una tecla ...');
repeat until keypressed;
END. { of program }
|
|
|
|
CAD |
|
Packer |
|
Suche |
|
Grafik |
|
| Typografie |
|
| Tools |
|
|
Kostenloses |
|
|
|
|