PMG/Kurs 11/kleine BeispieleII
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Pascal</language>
Dies ist eine weitere Übungsseite zur Bearbeitung weiterer einfacher mathematischer Beispiele.
'''Für jedes Problem zunächst einen Algorithmus formulieren, also z.B. in einem Struktogramm
darstellen. Dann in den vorgegebenen Boxen implementieren.
Überlege, ob eine ''function'' oder eine ''procedure'' verwendet werden sollte.'''
=== Es soll das Maximum dreier einzugebender Zahlen ermittelt werden. ===
<code id="4fa9724a6ef70">
</code>
<run id="4fa9724a6f0f8">
</run>
=== Es soll geprüft werden, ob durch drei einzugebende Zahlen, die die Seitenlängen darstellen sollen, ein Dreieck beschrieben wird. ===
<code id="4fa9724a6f020">
</code>
<run id="4fa9724a6f155">
</run>
=== Es soll die Summe der ersten $n$ natürlichen Zahlen berechnet werden. ===
<code id="4fa9724a6f088">
</code>
<run id="4fa9724a6f1be">
</run>
{| border="0"
|-
|
=== Was leistet dieser Algorithmus? ===
|| <run id="4fa9752fe419b">//hier Antwort eintragen</run> || [[Bild:Struktogramm2.jpg|right|thumb|100px|Struktogramm]]
|-
| || ||
|-
|
=== Implementiere den Algorithmus. ===
|| <code id="4fa974032200f">
</code> ||
|-
| ||
<run id="4fa9740322159">
</run>
|}
=== Setze das Potenzieren aus Aufgabe 4 mit einer Zählschleife um (also die Schleife mit vorangestellter Bedingung ersetzen). ===
<code id="4fb34b3ed03c4">
</code>
<run id="4fb34b3ed0498">
</run>
=== Prüfe ob ein gegebenes Jahr ein Schaltjahr ist ===
Ein Schaltjahr liegt vor, wenn
4 ein Teiler der Jahreszahl ist,
bei Jahrhunderten die Jahreszahl durch 400 teilbar ist.
Eine durch 4 teilbare Zahl $z$ erfüllt die Gleichung $z$ $mod (4) = 0$
'''modulo''': '''Rest''' bei der Division durch 4 ist Null (bei allen Vielfachen von 4)!
<code id="4fc536c40fcbe">
</code>
<run id="4fc536c40ffa4">
</run>
=== Prüfe ob eine gegebene Zahl eine Primzahl ist ===
<code id="4fc536c40fd46" >
</code>
<run id="4fc536c410033">
</run>
=== Berechne die Summe aller Teiler einer gegebenen Zahl ===
<code id="4fc536c40fdeb">
</code>
<run id="4fc536c4100b1">
</run>
=== Erzeugen von Zufallszahlen ===
<code id="4fce6acbf2cdd">
function zufall(a:integer):integer;
begin
result:=random(a);
end;
</code>
<run id="4fce6acbf310d">
writeln(zufall(100));
</run>
==== Würfeln ====
Nun sollen nur Ergebnisse zufällig erzeugt werden, wie sie an einem idealen Würfel eintreten können.<br>
Ergänze die Boxen analog dem obigen Beispiel und teste das Ergebnis.<br>
<code id="4fce6acbf2dc0">
//function wurf(a:integer):integer;
</code>
<run id="4fce6acbf31f6">
</run>
==== Würfelspiel ====
Simuliere nun ein Würfelspiel mit einem idealen Würfel.
Für eine Anzahl <math>n</math> von Würfen soll die Anzahl aller geworfenen Augenzahlen ausgegeben werden.
''Hinweis:'' Es soll also für jede mögliche Augenzahl eine Variable vereinbart werden, eine beliebige Anzahl
von (simulierten) Versuchen durchgeführt werden und die ''Anzahl'' der
gewürfelten Einsen, Zweien, ..., Sechsen ausgegeben werden.
Stelle den notwendigen Algorithmus zunächst in einem Struktogramm dar.<br>
Benutze dazu auch das Tool ''structorizer''.
<code id="4fce6acbf2f8d">
//function spiel(a:integer):integer;
</code>
<run id="4fce6acbf3426">
</run>
=== Berechne die Fakultät einer gegebenen Zahl ===
<code id="4fc536c40fe85">
</code>
<run id="4fc536c410134">
</run>