home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tiger Disk 5
/
Tiger_Disk_005_19xx_Tiger-Crew-Disk_de_Side_B.d64
/
8_1lektion
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
3KB
|
73 lines
0 poke45,peek(174):poke46,peek(175):clr:poke788,52:poke657,128
1 poke53280,1:poke53281,1:z$=chr$(34):goto16
2 y=u1:gosub9:print"[207]":fori=0tou2-u1-2:print"[165]":next:print"[204]":return
3 print"[147]":fori=1to39:printc$;:next:fori=1to22:print"[157]"c$;:next:print"[157]";
4 fori=1to38:print"[157]"c$"[157]";:next:printc$
5 fori=1to23:print"[145]"c$"[157]";:next:return
6 y=u1:gosub9:fori=0tou2-u1:print" ":next:return
7 geta$:ifa$=""then7
8 print:return
9 print"":fori=0toy-1:print"";:next:print"[145][145]";:return
13 y=y1:gosub9:fori=1toy2-y1:print" ":next
14 gosub9:return
16 c$="#":gosub3:print""tab(15)"lektion 8"
17 printtab(12)"1. programmbeispiel":printtab(12)"2. gosub...return"
18 printtab(12)"3. on...goto":printtab(12)"4. on...gosub":gosub7
22 print"[147]"tab(11)"programmbeispiel":print"es folgt nun ein programmbeispiel,";
24 print" das die zahlen 1 bis 100 in die eine";
25 print" reihe druckt und die quadrate in die reihe daneben.
26 [153]"":[153]"1 for i = 1 to 100
30 print"2 print i, i*i":print"3 next":gosub7
34 print"[147]"tab(10)"gosub...return":print"groessere programme benoetigen haeufig"
36 print"die wiederholung einer ganzen gruppe von";:print"befehlen[129] (subroutine)."
38 print"um dem computer mitzuteilen, dass eine
40 [153]"forsubroutine ausgefuehrt werden soll,":[153]"wird der befehlfor gosub benutzt."
42 [153]"ein forgosub-befehl hat das format:
44 print"[129] zeilen#1[146] gosub zeilen#2[146]":print
45 print"bei ausfuehrung von zeilen#1[146] springt":print"der computer zu zeilen#2[146]"
46 print"und fuehrt die anweisungen [129]bis zum
48 [153]"naechsten return-befehl aus, danach
50 print"springt der computer zu dem befehl, der":print"dem[129] gosub-befehl folgt."
51 gosub7:fori=1to11:print:next:print"[145]";:gosub7
52 y=14:gosub9:print"die gruppe von befehlen, die ab zeile#2"
54 print"bis zum return-befehl steht, heisst eine";:print"[129]subroutine.
56 [153]"derfor return-befehl hat das format:":[153]"for zeilen#wait return
58 print"betrachten sie nun das folgende":print"programm:":gosub7
62 print"[147] 2 for i=1 to 100":print" 4 input n$, h, r":print" 6 gosub 12":print" 8 next"
64 print" 10 goto 22":print" 11 rem lohnsummen-subroutine":print" 12 if h>40 then 18"
65 print" 14 print n$ "z$" verdient "z$" h*r
66 [153]" 16 return":[153]" 18 let s= 40*r + (h-40)*1.5 * r
68 print" 20 print n$ "z$"verdient"z$" s":print" 21 return":print" 22 end"
69 gosub7
70 print"dieses programm berechnet den lohn":print"fuer 100 arbeiter."
74 gosub7:y1=15:y2=25:gosub13:gosub9
77 print"in zeile 4 wird die eingabe des namens,
78 [153]"der arbeitsstunden und des gehalts":[153]"ermoeglicht.":[141]7
80 [153]"zeile 6 sorgt fuer den sprung nach":[153]"zeile 12.":[141]7:u1[178]3:u2[178]7
81 [141]2
82 [141]13:y[178]15:[141]9:[153]"in zeile 12 wird festgestellt, ob der
84 print"arbeiter mehr als 40 stunden gearbeitet":print"hat.":gosub7
86 print"wenn ja, so wird als naechstes in zeile"
87 print"18 das gehalt inklusive ueberstunden"
88 print"berechnet und in s[146] gespeichert.":gosub7:u1=8:u2=10
89 gosub2:y=23:gosub7
90 gosub9:print"zeile 20 bewirkt den druck des namens"
91 print"und des lohns.";:gosub7
92 u1=3:gosub6:gosub13:y=16:gosub9:print"zeile 21 bewirkt den sprung zurueck
94 [153]"zu zeile 8.":[141]7:u1[178]4:u2[178]12:[141]2:[141]7:[141]6
96 y[178]16:[141]9:[153]"wenn nicht ueber 40 stunden gearbeitet
98 print"wurde, so wird in zeile 14 das gehalt":print"berechnet.":gosub7
100 print"zeile 16 sorgt fuer den sprung zurueck":print"zu zeile 8.";:gosub7
102 u2=9:gosub2:gosub7:gosub6:y=23:gosub9
103 print"an dieser stelle wird die schleife
104 [153]"wiederholt.";:[141]7:u1[178]1:u2[178]4:[141]2;:[141]7
105 [141]6:[141]13:y[178]15:[141]9
106 [153]"zeile 10 sorgt fuer den sprung zu"
108 [153]"zeile 22, um das programm zu beenden,
109 print"wenn der 100ste name eingegeben ist.":gosub7:u1=5:u2=13
110 gosub2:gosub7
400 c$="#":gosub3:print"ende von lektion 8 teil 1
402 [153]"bitte warten sie, bis teil 2":[153]"eingelesen ist."
403 [153]"
850 load"8/2lektion",8