File AUSZAH.CO

Directory of image this file is from
This file as a plain text file

PROGRAMM-ID.
	AUSZAHLEN.CO.
COMMENTS.
	EIN BETRAG WIRD AUS EINEM KONTO ABGEHOBEN.
AUTOR.
	HARUN EVEYIK.
FILE-CONTROL.
	SELECT KONTEN,  ASSIGN TO DSK ACCESS MODE IS RANDOM
	ACTUAL KEY IS SATZNR.
DATA-DIVISION.
FILE-CONTROL SECTION.
FD KONTEN.
01 BILD.
	02 NUMMER		PIC	9(3).
	02 NAME			PIC 	X(25).
	02 STRASSE		PIC	X(25).
	02 WOHNORT		PIC	X(25).
	02 GEBOREN		PIC	X(10).
	02 MAXIMALKREDIT	PIC	S9(7)V99.
	02 ALTSTAND		PIC	S9(7)V99.
	02 DATUM		PIC	X(10).
	02 BEWART		PIC	X(30).
	02 BEWEGUNG		PIC	S9(7)V99.
	02 NEUSTAND		PIC	S9(7)V99.
	02 ZINSSPEICHER		PIC	S9(7)V99.
	02 SCHECKNUMMER		PIC	9(3).
	02 AUSZUGSNUMMER	PIC	9(3).
	
WORKING-STORAGE SECTION.
01 REST				PIC	S9(7)V99.
01 SATZNR			PIC	9(3).
01 KONTO-VORHANDEN		PIC	9.
01 KREDIT			PIC	S9(7)V99.
01 ANTWORT			PIC	X.
01 E-NEUSTAND		PIC	------9.99.
01 BETRAG		PIC	9(7)V99.
01 KONTONUMMER		PIC	9(3).
PROCEDURE DIVISION.
	DISPLAY "SIE WOLLEN GELD VON EINEM KONTO ABHEBEN."
	DISPLAY "DAZU GEBEN SIE BITTE DIE KONTONUMMER EIN .".
	DISPLAY "WENN SIE ABGEHOBEN HABEN GEBEN SIE EINE 1 EIN.".
	PERFORM KONTO-OEFFNEN.
	PERFORM GELD-AUSGABE.
	PERFORM P-ENDE.
GELD-AUSGABE.
	PERFORM PRUEFEN.
	IF KONTO-VORHANDEN = 0 THEN PERFORM FEHLER,  GO TO GELD-AUSGABE
	ELSE PERFORM AUSGABE.
	DISPLAY "WIEVIEL WOLLEN SIE ABHEBEN ?".
	ACCEPT BETRAG.
	IF BETRAG > NEUSTAND AND BETRAG > 0  THEN PERFORM KREDIT-NEHMEN.
	PERFORM AUSZAHLEN.
	GO TO GELD-AUSGABE.
AUSZAHLEN.
	MOVE NEUSTAND TO ALTSTAND.
	SUBTRACT BETRAG FROM NEUSTAND GIVING NEUSTAND.
	WRITE BILD.
	PERFORM AUSGABE.
KONTO-OEFFNEN.
	OPEN I-O KONTEN.
PRUEFEN.
	DISPLAY  "KONTONUMMER :".
	ACCEPT KONTONUMMER.
	MOVE 1 TO KONTO-VORHANDEN.
	IF KONTONUMMER = 1 THEN PERFORM P-ENDE.
	SUBTRACT 99 FROM KONTONUMMER GIVING SATZNR.
	IF SATZNR < 1 THEN MOVE 0 TO KONTO-VORHANDEN.
	IF SATZNR > 0  THEN READ KONTEN,
	INVALID KEY MOVE 0 TO KONTO-VORHANDEN,
	IF NAME = "" THEN  MOVE 0 TO KONTO-VORHANDEN.
AUSGABE.
	DISPLAY NAME.
	DISPLAY STRASSE.
	DISPLAY WOHNORT.
	DISPLAY GEBOREN.
	DISPLAY "KONTOSTAND :".
	MOVE NEUSTAND TO E-NEUSTAND.
	DISPLAY E-NEUSTAND.
	DISPLAY.
KREDIT-NEHMEN.
	DISPLAY "SIE HABEN NUR ".
	MOVE NEUSTAND TO E-NEUSTAND.
	DISPLAY E-NEUSTAND.
	DISPLAY " DM. AUF IHREM KONTO. ".
	IF NEUSTAND < 0 THEN MOVE BETRAG TO KREDIT
	ELSE SUBTRACT NEUSTAND FROM BETRAG GIVING KREDIT.
	DISPLAY "WOLLEN SIE ".
	MOVE KREDIT TO E-NEUSTAND.
	DISPLAY E-NEUSTAND.
	DISPLAY "DM. KREDIT AUFNEHMEN ?".
	ACCEPT ANTWORT.
	IF ANTWORT = "N" AND NEUSTAND < 0 THEN MOVE 0 TO BETRAG.
	IF ANTWORT = "N" AND NEUSTAND > 0 THEN MOVE NEUSTAND TO BETRAG
	ELSE SUBTRACT KREDIT FROM MAXIMALKREDIT GIVING REST,
	ADD NEUSTAND TO REST,
	IF REST < 0    THEN PERFORM KREDIT-ZUGROSS.
KREDIT-ZUGROSS.
	DISPLAY "SIE KOENNEN NUR ".
	MOVE MAXIMALKREDIT TO E-NEUSTAND.
	DISPLAY E-NEUSTAND.
	DISPLAY "DM. ALS KREDIT AUFNEHMEN .".
	DISPLAY "WOLLEN SIE ".
	IF NEUSTAND < 1   THEN MOVE   NEUSTAND  TO KREDIT, ADD MAXIMALKREDIT 
	TO KREDIT.
	IF KREDIT < 0 THEN MOVE 0 TO KREDIT.
	MOVE KREDIT TO E-NEUSTAND.
	DISPLAY E-NEUSTAND.
	DISPLAY "DM. KREDIT AUFNEHMEN ?".
	ACCEPT ANTWORT.
	MOVE 0 TO BETRAG.
	IF ANTWORT = "J" THEN MOVE KREDIT TO BETRAG.
	IF NEUSTAND > 0 AND ANTWORT = "N" THEN MOVE NEUSTAND TO BETRAG.
	IF NEUSTAND < 0  AND ANTWORT = "N" THEN GO TO GELD-AUSGABE.
SCHLIESSEN.
	CLOSE KONTEN.
	CALL GELHAU.
FEHLER.
	DISPLAY "DIESE KONTONUMMER IST NICHT VORHANDEN!".
P-ENDE.
	DISPLAY "AUSZAHLEN BEENDET  !".
	PERFORM SCHLIESSEN.



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search