Tämä ohjelmaa etsii kaikki funktiot annettujen rajojen sisällä, jotka toteuttavat DATA-lausekkeisiin luetut muuttujaparit. Esimeriksi, jos käyttäjä antaa parit 1-3 ja 2-5, niin ohjelma näyttää esim. funktion y = 2x + 1.
DIM matrix(1 TO 10, 1 TO 2)
ON ERROR GOTO virhe
'x ja y-parit
DATA -3,0
DATA -2,-3
DATA -1,-4
DATA 0,-3
DATA 1,0
DATA 2,5
DATA 3,12
FOR mtr = 1 TO 10 'luetaan x ja y-parit taulukkoon...
IF loppu = 1 THEN mtr = mtr - 2: EXIT FOR
READ matrix(mtr, 1)
READ matrix(mtr, 2)
NEXT mtr
CLS
FOR k = -5 TO 5 'käydään läpi kulmakertoimet alueelta -5 - +5
IF k = 0 THEN k = 1 'jos kerroin on 0, hypätään yli
FOR v = -5 TO 5 ' vakiomuuttujat alueelta -5 - +5
FOR e = 1 TO 10 'eksponentit...
FOR l = -5 TO 5 'vakiomuuttujat, jotka vaikuttavat x:ään ennen eksponettia, tai kulmakerrointa
t = 1 'oletetaan että funktio on tosi
FOR b = 1 TO mtr 'aletaan laskea funktiota x ja y -pareilla
x = matrix(b, 1)
y = matrix(b, 2)
arvo = k * (x + l) ^ e + v 'lasketaan funktio
IF arvo <> y THEN t = 0 'jos ei toimi, funktio on epätosi
IF l <> 0 AND e = 1 THEN t = 0 'karsitaan pois (ei tarvitse ymmärtää)
NEXT b
IF t = 1 THEN 'jos funktio on tosi...
f$ = "y ="
IF k > 1 THEN f$ = f$ + LEFT$(STR$(k), LEN(k))
IF k < 1 THEN f$ = f$ + " " + LEFT$(STR$(k), LEN(k))
IF l <> 0 THEN f$ = f$ + " ("
IF k <> 1 OR l <> 0 THEN f$ = f$ + "x" ELSE f$ = f$ + " x"
IF l > 0 THEN f$ = f$ + "+"
IF l < 0 THEN f$ = f$ + "-"
IF l <> 0 THEN f$ = f$ + RIGHT$(STR$(l), LEN(l) - 3) + ")"
IF e <> 1 THEN f$ = f$ + " ^" + STR$(e)
IF v < 0 THEN f$ = f$ + " " + STR$(v)
IF v > 0 THEN f$ = f$ + " +" + STR$(v)
PRINT f$ 'näytetään funktio
END IF
NEXT l
NEXT e
NEXT v
NEXT k
IF SCREEN(1, 1) = 32 THEN PRINT "Ei toteuttavia funktioita."
END
virhe:
loppu = 1
RESUME NEXTAihe on jo aika vanha, joten et voi enää vastata siihen.