03-07-2005, 07:02 PM
I found my first program ever. Didn't know that loops and sub routines existed. It's pretty funny.
edit: Hey i did know what subs were, funny
edit: Hey i did know what subs were, funny
Code:
DECLARE SUB Meny ()
CLS
SCREEN 12
Meny:
CALL Meny
DO
COLOR 4: LOCATE 2, 13: PRINT ".::.cAs.::."
COLOR 14: LOCATE 5, 3: PRINT "2 .:: Generera Personnummer ::."
COLOR 14: LOCATE 6, 2: PRINT "3 .:: Kontrollera Personnummer ::."
COLOR 14: LOCATE 4, 6: PRINT "1 .:: Exit this Shit ::."
LOCATE 7, 13: INPUT "Your Choice ", choice
SELECT CASE choice
CASE 1
SYSTEM
CASE 2
GOSUB Kalkylf
CASE 3
GOSUB Kalkylb
END SELECT
LOOP
Kalkylf:
LOCATE 26, 47: INPUT Num$
LOCATE 16, 32: PRINT "1. Man"
LOCATE 17, 32: PRINT "2. Kvinna"
LOCATE 15, 32: INPUT "Kân ", K
RANDOMIZE TIMER
A$ = MID$(Num$, 1, 1)
B$ = MID$(Num$, 2, 1)
C$ = MID$(Num$, 3, 1)
D$ = MID$(Num$, 4, 1)
E$ = MID$(Num$, 5, 1)
F$ = MID$(Num$, 6, 1)
G = INT(RND * 9) + 1
H = INT(RND * 9) + 1
SELECT CASE K
CASE 1
GOTO Man
CASE 2
GOTO Kvinna
END SELECT
Man:
D1 = INT(RND * 5) + 1
SELECT CASE D1
CASE 1
I = 1
CASE 2
I = 3
CASE 3
I = 5
CASE 4
I = 7
CASE 5
I = 9
END SELECT
GOTO Multi
Kvinna:
D1 = INT(RND * 5) + 1
SELECT CASE D1
CASE 1
I = 2
CASE 2
I = 4
CASE 3
I = 5
CASE 4
I = 6
CASE 5
I = 8
END SELECT
GOTO Multi
Multi:
n1 = 2 * VAL(A$)
n2 = 1 * VAL(B$)
n3 = 2 * VAL(C$)
n4 = 1 * VAL(D$)
n5 = 2 * VAL(E$)
n6 = 1 * VAL(F$)
n7 = 2 * G 'VAL(G$)
n8 = 1 * H 'VAL(H$)
n9 = 2 * I 'VAL(I$)
n1$ = STR$(n1)
n2$ = STR$(n2)
n3$ = STR$(n3)
n4$ = STR$(n4)
n5$ = STR$(n5)
n6$ = STR$(n6)
n7$ = STR$(n7)
n8$ = STR$(n8)
n9$ = STR$(n9)
b1$ = MID$(n1$, 2, 1)
b2$ = MID$(n1$, 3, 1)
b3$ = MID$(n2$, 2, 1)
b4$ = MID$(n2$, 3, 1)
b5$ = MID$(n3$, 2, 1)
b6$ = MID$(n3$, 3, 1)
b7$ = MID$(n4$, 2, 1)
b8$ = MID$(n4$, 3, 1)
b9$ = MID$(n5$, 2, 1)
b10$ = MID$(n5$, 3, 1)
b11$ = MID$(n6$, 2, 1)
b12$ = MID$(n6$, 3, 1)
b13$ = MID$(n7$, 2, 1)
b14$ = MID$(n7$, 3, 1)
b15$ = MID$(n8$, 2, 1)
b16$ = MID$(n8$, 3, 1)
b17$ = MID$(n9$, 2, 1)
b18$ = MID$(n9$, 3, 1)
b1 = VAL(b1$)
b2 = VAL(b2$)
b3 = VAL(b3$)
b4 = VAL(b4$)
b5 = VAL(b5$)
b6 = VAL(b6$)
b7 = VAL(b7$)
b8 = VAL(b8$)
b9 = VAL(b9$)
b10 = VAL(b10$)
b11 = VAL(b11$)
b12 = VAL(b12$)
b13 = VAL(b13$)
b14 = VAL(b14$)
b15 = VAL(b15$)
b16 = VAL(b16$)
b17 = VAL(b17$)
b18 = VAL(b18$)
J = b1 + b2 + b3 + b4 + b6 + b7 + b8 + b9 + b10 + b11 + b12 + b13 + b14 + b15 + b16 + b17 + b18
SELECT CASE J
CASE 0 TO 9
GOTO T10
CASE 10 TO 19
GOTO T20
CASE 20 TO 29
GOTO T30
CASE 30 TO 39
GOTO T40
CASE 40 TO 49
GOTO T50
CASE 50 TO 59
GOTO T60
CASE 60 TO 69
GOTO T70
CASE 70 TO 79
GOTO T80
CASE 80 TO 89
GOTO T90
CASE 90 TO 99
GOTO T100
CASE 100 TO 109
GOTO T110
END SELECT
T10:
T = 10
GOTO Prin:
T20:
T = 20
GOTO Prin:
T30:
T = 30
GOTO Prin:
T40:
T = 40
GOTO Prin:
T50:
T = 50
GOTO Prin:
T60:
T = 60
GOTO Prin:
T70:
T = 70
GOTO Prin:
T80:
T = 80
GOTO Prin:
T90:
T = 90
GOTO Prin:
T100:
T = 100
GOTO Prin:
T110:
T = 110
GOTO Prin:
Prin:
J = T - J
G$ = STR$(G)
H$ = STR$(H)
I$ = STR$(I)
J$ = STR$(J)
G$ = LTRIM$(G$)
H$ = LTRIM$(H$)
I$ = LTRIM$(I$)
J$ = LTRIM$(J$)
LOCATE 26, 47: PRINT A$ + B$ + C$ + D$ + E$ + F$; "-"; G$ + H$ + I$ + J$
SLEEP
GOTO Meny
Kalkylb:
LOCATE 26, 47: INPUT Num$
A$ = MID$(Num$, 1, 1)
B$ = MID$(Num$, 2, 1)
C$ = MID$(Num$, 3, 1)
D$ = MID$(Num$, 4, 1)
E$ = MID$(Num$, 5, 1)
F$ = MID$(Num$, 6, 1)
G$ = MID$(Num$, 7, 1)
H$ = MID$(Num$, 8, 1)
I$ = MID$(Num$, 9, 1)
S$ = MID$(Num$, 10, 1)
n1 = 2 * VAL(A$)
n2 = 1 * VAL(B$)
n3 = 2 * VAL(C$)
n4 = 1 * VAL(D$)
n5 = 2 * VAL(E$)
n6 = 1 * VAL(F$)
n7 = 2 * VAL(G$)
n8 = 1 * VAL(H$)
n9 = 2 * VAL(I$)
n1$ = STR$(n1)
n2$ = STR$(n2)
n3$ = STR$(n3)
n4$ = STR$(n4)
n5$ = STR$(n5)
n6$ = STR$(n6)
n7$ = STR$(n7)
n8$ = STR$(n8)
n9$ = STR$(n9)
b1$ = MID$(n1$, 2, 1)
b2$ = MID$(n1$, 3, 1)
b3$ = MID$(n2$, 2, 1)
b4$ = MID$(n2$, 3, 1)
b5$ = MID$(n3$, 2, 1)
b6$ = MID$(n3$, 3, 1)
b7$ = MID$(n4$, 2, 1)
b8$ = MID$(n4$, 3, 1)
b9$ = MID$(n5$, 2, 1)
b10$ = MID$(n5$, 3, 1)
b11$ = MID$(n6$, 2, 1)
b12$ = MID$(n6$, 3, 1)
b13$ = MID$(n7$, 2, 1)
b14$ = MID$(n7$, 3, 1)
b15$ = MID$(n8$, 2, 1)
b16$ = MID$(n8$, 3, 1)
b17$ = MID$(n9$, 2, 1)
b18$ = MID$(n9$, 3, 1)
b1 = VAL(b1$)
b2 = VAL(b2$)
b3 = VAL(b3$)
b4 = VAL(b4$)
b5 = VAL(b5$)
b6 = VAL(b6$)
b7 = VAL(b7$)
b8 = VAL(b8$)
b9 = VAL(b9$)
b10 = VAL(b10$)
b11 = VAL(b11$)
b12 = VAL(b12$)
b13 = VAL(b13$)
b14 = VAL(b14$)
b15 = VAL(b15$)
b16 = VAL(b16$)
b17 = VAL(b17$)
b18 = VAL(b18$)
J = b1 + b2 + b3 + b4 + b6 + b7 + b8 + b9 + b10 + b11 + b12 + b13 + b14 + b15 + b16 + b17 + b18
SELECT CASE J
CASE 0 TO 9
GOTO A10
CASE 10 TO 19
GOTO A20
CASE 20 TO 29
GOTO A30
CASE 30 TO 39
GOTO A40
CASE 40 TO 49
GOTO A50
CASE 50 TO 59
GOTO A60
CASE 60 TO 69
GOTO A70
CASE 70 TO 79
GOTO A80
CASE 80 TO 89
GOTO A90
CASE 90 TO 99
GOTO A100
CASE 100 TO 109
GOTO A110
END SELECT
A10:
T = 10
GOTO Ending
A20:
T = 20
GOTO Ending
A30:
T = 30
GOTO Ending
A40:
T = 40
GOTO Ending
A50:
T = 50
GOTO Ending
A60:
T = 60
GOTO Ending
A70:
T = 70
GOTO Ending
A80:
T = 80
GOTO Ending
A90:
T = 90
GOTO Ending
A100:
T = 100
GOTO Ending
A110:
T = 110
GOTO Ending
Ending:
LOCATE 26, 47: PRINT A$ + B$ + C$ + D$ + E$ + F$; "-"; G$ + H$ + I$ + S$; "ÿÿÿÿ"
J = T - J
S = VAL(S$)
Result = J EQV S
IF Result = -1 THEN
LOCATE 7, 45: PRINT "Personnummret âr giltigt"
SLEEP
GOTO Meny
ELSE
LOCATE 10, 45: PRINT "Personnumret âr inte giltigt"
SLEEP
GOTO Meny
END IF
SUB Meny
CLS
LINE (363, 397)-(620, 417), 1, B
END SUB
oship me and i will give you lots of guurrls and beeea