mirror of
https://github.com/mbirth/gwbasic.git
synced 2024-11-13 00:36:46 +00:00
129 lines
3.5 KiB
QBasic
129 lines
3.5 KiB
QBasic
|
10 CLS
|
|||
|
20 DIM T(31)
|
|||
|
30 DIM MA(5)
|
|||
|
40 COLOR 10:PRINT" Programm zur Berechnung der Zeitzuschl<68>gen und <20>berstundenverg<72>tung"
|
|||
|
50 COLOR 12:PRINT" f<>r Mutti"
|
|||
|
60 COLOR 15
|
|||
|
70 PRINT
|
|||
|
80 PRINT"Besch<63>ftigungsgrad [1-Ganz; 2-Halb; 3-Dreiviertel]:"
|
|||
|
90 BESCH$=INKEY$:IF BESCH$="" THEN 90
|
|||
|
100 IF BESCH$="1" THEN BESCH$="Ganz":GOTO 140
|
|||
|
110 IF BESCH$="2" THEN BESCH$="Halb":GOTO 140
|
|||
|
120 IF BESCH$="3" THEN BESCH$="Dreiviertel":GOTO 140
|
|||
|
130 GOTO 90
|
|||
|
140 INPUT"Tage :",TAG
|
|||
|
150 PRINT"FS-Tag [j/n] ?"
|
|||
|
160 FS$=INKEY$:IF FS$="" THEN 160
|
|||
|
170 IF FS$="j" THEN FS$="1":GOTO 200
|
|||
|
180 IF FS$="n" THEN FS$="0":GOTO 200
|
|||
|
190 GOTO 160
|
|||
|
200 W=1
|
|||
|
210 T=0
|
|||
|
220 IF BESCH$="Ganz" AND FS$="0" THEN SL=TAG*7.85
|
|||
|
230 IF BESCH$="Ganz" AND FS$="1" THEN SL=(TAG-1)*7.85
|
|||
|
240 IF BESCH$="Halb" AND FS$="0" THEN SL=TAG*3.93
|
|||
|
250 IF BESCH$="Halb" AND FS$="1" THEN SL=(TAG-1)*3.93
|
|||
|
260 IF BESCH$="Dreiviertel" AND FS$="0" THEN SL=TAG*(7.7/4*3)
|
|||
|
270 IF BESCH$="Dreiviertel" AND FS$="1" THEN SL=(TAG-1)*(7.7/4*3)
|
|||
|
280 PRINT
|
|||
|
290 PRINT USING"Soll: ###.##";SL
|
|||
|
300 PRINT
|
|||
|
310 INPUT"Gutstunden: ",GUT
|
|||
|
320 FER=SL-GUT
|
|||
|
330 PRINT USING"Mindest. : ###.##";FER
|
|||
|
340 PRINT
|
|||
|
350 PRINT"Wenn keine Werte mehr ---> 8888 eingeben"
|
|||
|
360 PRINT"Wenn 0 ---> 99"
|
|||
|
370 PRINT
|
|||
|
380 PRINT"Taste f<>r WEITER"
|
|||
|
390 A$=INKEY$:IF A$="" THEN 390
|
|||
|
400 CLS
|
|||
|
410 PRINT"20 - 7.85"
|
|||
|
420 PRINT"88 - 1 zur<75>ck"
|
|||
|
430 PRINT USING"Gesamt : ####.##";GES
|
|||
|
440 PRINT"Wert (";W;") ";:INPUT" ",T(W)
|
|||
|
450 IF T(W)=20 THEN T(W)=7.85
|
|||
|
460 IF T(W)=88 THEN W=W-1:GES=GES-SAFE:GOTO 400
|
|||
|
470 IF T(W)=0 THEN T(W)=SAFE
|
|||
|
480 IF T(W)=99 THEN T(W)=0
|
|||
|
490 IF T(W)=8888 THEN 550
|
|||
|
500 SAFE=T(W)
|
|||
|
510 GES=T(W)+GES
|
|||
|
520 IF W=31 THEN GOTO 550
|
|||
|
530 W=W+1
|
|||
|
540 GOTO 400
|
|||
|
550 PRINT
|
|||
|
560 COLOR 12
|
|||
|
570 PRINT USING"Gesamt-Wert: ###.##";GES
|
|||
|
580 COLOR 14
|
|||
|
590 PRINT
|
|||
|
600 PRINT USING"Mindest.: ###.##";FER
|
|||
|
610 PRINT USING"Ist : ###.##";GES
|
|||
|
620 COLOR 15
|
|||
|
630 PRINT
|
|||
|
640 PRINT USING" ###.##";GES
|
|||
|
650 PRINT USING"-###.##";FER
|
|||
|
660 PRINT "-------"
|
|||
|
670 MA(1)=GES-FER
|
|||
|
680 PRINT USING"####.##";MA(1)
|
|||
|
690 PRINT "======="
|
|||
|
700 PRINT
|
|||
|
710 INPUT"Gearbeitete Tage :",GTAG
|
|||
|
720 PRINT
|
|||
|
730 MA(2)=GTAG*10/60
|
|||
|
740 PRINT USING"Minutenausgleich: ##.##";MA(2)
|
|||
|
750 PRINT
|
|||
|
760 PRINT USING " ###.##";MA(1)
|
|||
|
770 PRINT USING "+###.##";MA(2)
|
|||
|
780 PRINT "-------"
|
|||
|
790 MA(3)=MA(1)+MA(2)
|
|||
|
800 PRINT USING "####.##";MA(3)
|
|||
|
810 PRINT "======="
|
|||
|
820 PRINT
|
|||
|
830 COLOR 10
|
|||
|
840 PRINT USING "Gut: ###.##";MA(3)
|
|||
|
850 PRINT
|
|||
|
860 VZ=MA(3)
|
|||
|
870 IF MA(3)<0 THEN MA(3)=MA(3)-MA(3)-MA(3)
|
|||
|
880 HR=INT(MA(3))
|
|||
|
890 DMN=MA(3)-HR
|
|||
|
900 MN=DMN*6/10
|
|||
|
910 COLOR 14
|
|||
|
920 IF VZ<0 THEN HR=HR-HR-HR
|
|||
|
930 PRINT USING "<22>bertrag:+### Std.##'";HR,MN
|
|||
|
940 PRINT
|
|||
|
950 PRINT"Weitere Berechnungen ?"
|
|||
|
960 PRINT"603 - Nachtschicht"
|
|||
|
970 PRINT"324 - Samstagsarbeit"
|
|||
|
980 PRINT"2 - Genehmigte <20>berstundenzahl mit Freizeitausgleich"
|
|||
|
990 PRINT"306 - Arbeit an Sonntagen"
|
|||
|
1000 PRINT
|
|||
|
1010 INPUT"Code :",CD
|
|||
|
1020 IF CD=603 THEN GOTO 1080
|
|||
|
1030 IF CD=324 THEN GOTO
|
|||
|
1040 IF CD=2 THEN GOTO
|
|||
|
1050 IF CD=200 THEN GOTO
|
|||
|
1060 IF CD=306 THEN GOTO
|
|||
|
1070 GOTO 1010
|
|||
|
1080 REM Nachtarbeit
|
|||
|
1090 CLS
|
|||
|
1100 COLOR 10:PRINT" Nachtarbeit"
|
|||
|
1110 PRINT
|
|||
|
1120 INPUT"Anzahl der zusammenzuz<75>hlenden Tage: ",DAYS
|
|||
|
1130 E=1
|
|||
|
1140 D=0
|
|||
|
1150 CLS
|
|||
|
1160 PRINT USING"Gesamt: ###.##";GSMT
|
|||
|
1170 PRINT"Wert (";D(E);") :";:INPUT WRT
|
|||
|
1180 IF E>=DAYS THEN GOTO 1220
|
|||
|
1190 E=E+1
|
|||
|
1200 GSMT=GSMT+WRT
|
|||
|
1210 GOTO 1150
|
|||
|
1220 REM Ausgabe
|
|||
|
1230 CLS
|
|||
|
1240 PRINT"Code: 603"
|
|||
|
1250 PRINT"Gesamt: ";GSMT
|
|||
|
1260 PRINT
|
|||
|
1270 A$=INKEY$:IF A$="" THEN 1270
|
|||
|
1280 CLS:GOTO 940
|
|||
|
|