| Eine "einfache" Beispielsammlung |
Diese Sammlung erhebt keinen Anspruch
auf Vollständigkeit. Sie wird gegebenenfalls mit weiteren "attraktiven" Aufgaben erweitert.
Die Realisierung ist in jeder Programmiersprache mit einfachen Daten- und
Programm- bzw. Ablaufstrukturen bewältigbar.
Einige Beispiele können in einer Tabellenkalkulation ohne Programmierung
gelöst werden.
01a Benzinverbrauch
Eingabe : gefahrene Kilometer und
verbrauchte Liter
Ausgabe : Benzinverbrauch in Liter
pro 100 km
01b Euro-Umrechnung
Eingabe : Betrag in ATS
Ausgabe : Betrag in EURO (Umrechnungsfaktor
13,7603) und umgekehrt
02 Body-Mass-Index
Analyse : Ist der BMI < 19 ...
Untergewicht, 25..30 ... Übergewicht, > 30 ... Fettsucht, sonst Normalgewicht
Eingabe : Gewicht in Kg, Körpergröße
in m
Verarbeitung : BMI = Gewicht / Körpergröße^2
Ausgabe : BMI und "Kommentar"
03 Skelettfund
Statistisch und empirisch Körpergröße
= 69.089+2.238*Oberschenkellänge (bei Männern )
bei Frauen : Körpergröße
= 61.412 + 2*Oberschenkellänge
An dem 30.Jahr nimmt die Körpergröße
um 0.06cm / Jahr ab.
Eingabe : Oberschenkellänge,Alter,Geschlecht
Ausgabe : Köpergröße
04 Berechnung des Ostersonntagtermines
Wichtigste Anwendung der Arithmetik
im Mittelalter - Kirchenrechnung (computus ecclesiasticus).
Ostern findet seit dem Konzil in
Nicäa (325) immer am Sonntag nach dem ersten Vollmond statt, der auf
den 21. März folgt
( Tag - und Nachtgleiche ).
Ein relativ einfacher Algorithmus,
der für die Jahre 1900 - 2099 gilt, stammt von T. O´Beirne (1966)
und lautet so :
Eingabe : Jahreszahl x ( 1900 <=
x <= 2099 )
Verarbeitung : a:=Rest( (x-1900)
/ 19 )
b:=ganzzahliger Anteil von (7a+1)/19
m:=Rest( (11a+4-b) / 29 )
q:=ganzzahliger Anteil von (x-1900)
/ 4
w:=Rest ( ( x-1900+q+31-m ) / 7
)
t:=25-m-w
wenn t > 0 dann Ausgabe : "Ostersonntag",
t, ". ter April" sonst Ausgabe : "Ostersonntag", 31-t,
".ter März"
05 Kleinste von 3 Zahlen
Eingabe
: 3 Zahlen ( händisch oder durch Zufallszahlen
)
Verarbeitung : Durch Alternativanweisungen
( IF THEN ... ELSE )
Ausgabe : kleinste Zahl
Etwas schwieriger: Die Zahlen sollen absteigend sortiert ausgegeben
werden.
Wie sieht das gleiche Problem mit 10 Zahlen aus?
06 Zeichenerkennungsprogramm
Eingabe : Ein Zeichen
Ausgabe : "Das ist eine Ziffer",
"Das ist ein Buchstabe", "Das ist ein Sonderzeichen"
Tip : ORD(Zeichen) liefert die ASCII-Nummer
zurück z.B. ASC("A") ... 65
07 Kleines Einmaleins
Eingabe : Faktor ( Zahl zwischen
1 und 10 )
Ausgabe : 1 x Faktor = ....
....................
10 x Faktor = ....
08 Turmrechnung
Eingabe : Startzahl
Ausgabe : Startzahl
Startzahl x 2
........
Startzahl / 2
Startzahl
9 Lohnsteuer
Analyse : bis 150.000 .... 22 %,
150.000 - 300.000 ... 32%, 300.000 - 700.000 ... 42%, ab 700.000 .... 50
%
Beispiel : Brutto : 400.000 -> LST
= 150.000 * 22/100 + 150.000 * 32/100 + 100.000 * 42/100
Eingabe : Bruttolohn
Ausgabe : Lohnsteuer
und Nettobetrag
10 Zahlenraten
Der Computer denkt sich eine Zahl
zwischen 1 und 100 INT(RND*100)+1
Der Benutzer muß die Zahl
erraten. Der Computer hilft ihm dabei, indem er dem Benutzer mitteilt,
ob die gerade eingegebene Zahl noch
zu klein oder zu groß ist.
Die Anzahl der Rateversuche ist
mitzuzählen und am Ende auszugeben.
11
Rekorde in einem Jahrhundert
Man sagt: Heuer war der trockenste Winter in diesem Jahrhundert.
Wie oft in einem Jahrhundert sagt man das im Durchschnitt?
12 Irrfahrt in der Ebene ( vom
Mittelpunkt ausgehend )
Ein Objekt (Zeichen , Button, Label, ...),
das in der Mitte des Bildschirmes ist,
bewegt sich rein zufällig in
die 4 Himmelsrichtungen ( INT(4*RND)+1 ).
Diese Irrfahrt soll dan abbrechen,
wenn es sich zu weit hinausbewegt!
13 Ein Reaktionsspiel
Zwei ganze Zahlen sollen auf dem
Bildschirm an beliebiger Stelle kurz ausgeben werden,
deren Summe soll dann eingegeben
werden.
Der Computer soll die Rückmeldung
geben, ob diese Summe richtig oder falsch ist.
14 Zahlenfolgen
a ) Es soll die Zahlenfolge : 1,3,6,10,15,
... dargestellt werden
b ) Fibonacchi - Folge : 1,1,2,3,5,8,13,21,39,.....
15 Prüfziffer
Die Internationale Standard-Buchnummer
ist folgendermaßen aufgebaut :
Sprache-Verlagsnummer-Titelnummer-Prüfziffer
3-12-717700-3
Prüfziffer kommt folgendermaßen
zustande :
1 x 3 + 2 x 1 + 3 x 2 + 4 x 7 +
5 x 1 + 6 x 7 + 7 x 7 + 8 x 0 + 9 x 0 = 135 = 12 x 11 + 3
Prüfziffer ist in diesem Fall
3 und ist der Rest der Division von 135 durch 11.
Hinweis : Operatoren \ (Ganzzahldivison)
und A MOD B
(Modulo-Funktion, liefert REST bei
der Division von A durch B )
z.B.: 135 DIV 11 = 12 135 MOD 11
= 3
16 Prämiensparen
a) Es werden n Jahre hindurch jeweils
am Jahresanfang R Schillinge bei einem
konstanten Zinssatz von p % p.a.
angelegt.
Es ist die Kapitalentwicklung nach
jedem Jahr anzugeben.
b) Eingabe : Jahresrate R, Prozentsatz
p, Endkapital K
Ausgabe : Anzahl der Jahre, um K
zu erreichen
17 Das Abkühlungsproblem
Eine Suppe, frisch vom Herd gebracht,
habe eine Temperatur von 92o C,
die Zimmertemperatur betrage 190
C. In jeder Minute verringert sich die Suppentemperatur
um 10% der Differenz zur Zimmertemperatur.
Es ist ein Programm zu schreiben,
das die Suppentemperatur in Minutenabständen angibt.
18 Algorithmus zur Bestimmung des
größten gemeinsamen Teilers
Variante A
Die kleinere Zahl ist solange von der größeren Zahl zu subtrahieren, bis
sie gleich sind.
Beispiel: ggt(24,18) = ggt(24-18,18) = ggt(6,24) = ggt(6,24-6) = ggt(6,18)
= ggt(6,18-6) = ggt(6,12) ...... = ggt(6,6)
Variante B: Klassischer Euklidscher Algorithmus
Es ist der größte gemeinsame
Teiler auf folgende Art zu ermitteln: z.B. ggT(240,36)
240 : 36 = 6 Rest 24
36 : 24 = 1 Rest
12
24 : 12 = 2 Rest
0
Wenn Rest 0, so ist der letzte Divisor der ggT, hier also 12.
19 Ulam-Folge oder das 3n + 1
Problem
Eine Zahlenfolge ist nach folgender
Vorschrift zu bilden :
Eingabe : Startzahl
Vorschrift : Ist Zahl gerade, so
ist sie zu halbieren, sonst zu verdreifachen und um 1 zu erhöhen (daher
3n+1- Problem).
Ausgabe : Zu einer beliebigen Startzahl
ist die Zahlenfolge auszugeben.
20 Zahlenumwandlung
Eine natürliche Zahl ( max.
255 ) ist als Dualzahl darzustellen.
Eingabe : natürliche Zahl
Ausgabe : Dualzahl
Algorithmus : Dividiere nacheinander
durch die Zweierpotenzen 128, 64, 32, ...., 1
Der jeweilige Quotient ist anzuschreiben.
z.B.
237 :128 = 1 Rest 109
109
: 64 = 1 Rest 45
45 : 32 = 1 Rest 13
13 : 16 = 0 Rest 13
13 : 8 = 1 Rest 5
5 : 4 = 1 Rest 1
1 : 2 = 0 Rest 1
1 : 1 = 1 Rest 0