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