schule:c-sharp_programmieruebungen
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
schule:c-sharp_programmieruebungen [2016-03-07 08:17] – [Programm, das den eigenen Quelltext ausgibt] Hinweis entfernt marco.bakera | schule:c-sharp_programmieruebungen [2019-12-16 15:19] (aktuell) – [C# Programmierübungen] marco.bakera | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== C# Programmierübungen ====== | ||
+ | **Diese Seite wird nicht mehr gepflegt. Schau bei den [[Programmierübungen]] nach.** | ||
+ | ===== Übungen zu Schleifen ===== | ||
+ | |||
+ | Bei den folgenden Aufgaben ist die Lösung mit einer for-Schleife einfach zu erstellen. Kannst du sie auch mit einer while-Schleife lösen? | ||
+ | |||
+ | Für Profis, dich sich mit [[wpde> | ||
+ | |||
+ | ==== Zahlen bis maximum ==== | ||
+ | |||
+ | Von der Tastatur wird eine Zahl '' | ||
+ | |||
+ | Eingabe: 8 | ||
+ | Ausgabe: 1, 2, 3, 4, 5, 6, 7, 8 | ||
+ | |||
+ | |||
+ | ==== Gerade Zahlen ==== | ||
+ | |||
+ | Von der Tastatur wird eine Zahl '' | ||
+ | |||
+ | Eingabe: 6 | ||
+ | Ausgabe: 0, 2, 4, 6 | ||
+ | |||
+ | ==== FizzBuzz ==== | ||
+ | |||
+ | Bei dem FizzBuzz-Spiel werden die Zahlen von 1 bis 100 durchlaufen. Nun können folgende Fälle eintreten: | ||
+ | |||
+ | - Wenn die Zahl durch 3 teilbar ist, wird " | ||
+ | - wenn sie durch 5 teilbar ist, wird " | ||
+ | - wenn sie durch 3 und 5 teilbar ist, wird " | ||
+ | - Tritt keiner dieser Fälle ein, wird die Zahl ausgegeben. | ||
+ | |||
+ | Ob eine Zahl durch eine andere Zahl teilbar ist, kann mit Hilfe des [[http:// | ||
+ | |||
+ | Die ersten 20 Ausgaben sehen wir folgt aus: | ||
+ | < | ||
+ | 1 | ||
+ | 2 | ||
+ | Fizz | ||
+ | 4 | ||
+ | Buzz | ||
+ | Fizz | ||
+ | 7 | ||
+ | 8 | ||
+ | Fizz | ||
+ | Buzz | ||
+ | 11 | ||
+ | Fizz | ||
+ | 13 | ||
+ | 14 | ||
+ | FizzBuzz | ||
+ | 16 | ||
+ | 17 | ||
+ | Fizz | ||
+ | 19 | ||
+ | Buzz | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Hoch- und Runterzählen ==== | ||
+ | |||
+ | Das Programm gibt die Zahlen von 1 bis 10 und dahinter die Zahlen von 10 bis 1 aus. Es zählt also einmal rauf und dann wieder runter. Versuche, nur //eine// for-Schleife zu verwenden. | ||
+ | |||
+ | Ausgabe: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 | ||
+ | | ||
+ | | ||
+ | ==== Sternenreihe ==== | ||
+ | |||
+ | Schreiben Sie ein Programm, das zunächst die Eingabe einer positiven Zahl '' | ||
+ | Beispielablauf des Programms (Benutzereingaben in <>): | ||
+ | |||
+ | Anzahl (>0): <8> | ||
+ | ******** | ||
+ | |||
+ | ==== Sternentreppe ==== | ||
+ | |||
+ | Schreiben Sie ein Programm, das nach Eingabe einer positiven Zahl '' | ||
+ | Beispielablauf des Programms (Benutzereingaben in <>): | ||
+ | |||
+ | Hoehe (>0): <5> | ||
+ | | ||
+ | * | ||
+ | ** | ||
+ | *** | ||
+ | **** | ||
+ | ***** | ||
+ | |||
+ | |||
+ | ==== Sternendreieck ==== | ||
+ | |||
+ | Schreiben Sie ein Programm, das nach Eingabe einer ungeraden Zahl '' | ||
+ | Beispielablauf des Programms (Benutzereingaben in <>): | ||
+ | |||
+ | Basislaenge (>0 und ungerade): <9> | ||
+ | | ||
+ | * | ||
+ | *** | ||
+ | ***** | ||
+ | | ||
+ | ********* | ||
+ | |||
+ | |||
+ | |||
+ | ===== BMI-Rechner ===== | ||
+ | |||
+ | Der [[wpde> | ||
+ | |||
+ | Beispielablauf des Programms (Benutzereingaben in <>): | ||
+ | |||
+ | Bitte geben Sie Ihr Gewicht ein (in kg): <75> | ||
+ | Bitte geben Sie ihre Größe ein (in m): < | ||
+ | BMI = 22.89307408198773 | ||
+ | | ||
+ | |||
+ | ===== Notenrechner ===== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Der Notenrechner berechnet die Note bei Eingabe der Gesamtpunktzahl und der erreichten Punkte nach dem IHK-Schlüssel. | ||
+ | |||
+ | ^Note^ab | ||
+ | |1 | 92% | | ||
+ | |2 | 81% | | ||
+ | |3 | 67% | | ||
+ | |4 | 50% | | ||
+ | |5 | 30% | | ||
+ | |||
+ | ===== Zahlenraten ===== | ||
+ | |||
+ | Bei dem Spiel Zahlenraten geht es darum, möglichst schnell eine Zahl zwischen 0 und 100 zu erraten, die sich der Computer zufällig ausgedacht hat. Man kann dem Computer immer wieder eine Zahl nennen und er antwortet jeweils mit //Die gesuchte Zahl ist kleiner// oder //Die gesuchte Zahl ist größer// oder //Richtig geraten//. | ||
+ | |||
+ | Erstelle ein Programm, mit dem du das Spiel gegen den Computer spielen kann. | ||
+ | |||
+ | __Tipp:__ Eine Zufallszahl kann man mit der Klasse '' | ||
+ | |||
+ | <code csharp> | ||
+ | Random ranZufallszahlen = new Random(); | ||
+ | // Gibt eine Zufallszahl zurück, die in einem angegebenen Bereich liegt. | ||
+ | // Der Zahlen stammen aus dem Bereich von 0 bis 100 | ||
+ | ranZufallszahlen.Next(0, | ||
+ | // 60 | ||
+ | ranZufallszahlen.Next(0, | ||
+ | // 24 | ||
+ | ranZufallszahlen.Next(0, | ||
+ | // 47 | ||
+ | </ | ||
+ | |||
+ | ===== IBAN-Prüfsumme ===== | ||
+ | |||
+ | Die [[wpde> | ||
+ | |||
+ | DE**68** 2105 0170 0012 3456 78 | ||
+ | |||
+ | Sie wird z.B. bei Überweisungen verwendet, um das Empfängerkonto anzugeben. Diese IBAN hat im vorderen Bereich zwei Prüfziffern, | ||
+ | |||
+ | - Schaue dir den [[wpde> | ||
+ | - Schreibe ein Programm, das eine IBAN überprüft und ausgibt, ob eine eingegebene IBAN korrekt ist oder nicht. | ||
+ | - (schwieriger) Schreibe ein Programm, dass eine Prüfziffer berechnet. | ||
+ | |||
+ | //Tipp:// Wenn die Zahl groß wird, brauchst du einen anderen Datentyp als '' | ||
+ | ===== Programm, das den eigenen Quelltext ausgibt ===== | ||
+ | |||
+ | Schreibe ein Programm, das den eigenen Quelltext ausgibt. Dabei darf nicht auf Dateioperationen zurückgegriffen werden. Sonst wäre es zu einfach. Dann könnte man einfach nur die Datei ausgeben, die den Quelltext enthält. | ||
+ | |||
+ | Das schöne an dieser Aufgabenstellung ist, dass sie zunächst sehr einfach und nach ein paar Versuchen faktisch unmöglich erscheint. | ||
+ | |||
+ | Versuche dich selbst an einem C# | ||
+ | |||
+ | Wenn du keinen Ansatz findest, kann du den (unvollständigen) Quelltext aus der Fußnote(( | ||
+ | <code csharp> | ||
+ | class MainClass{ | ||
+ | static string[] daten = { | ||
+ | " | ||
+ | " | ||
+ | // ... | ||
+ | " | ||
+ | |||
+ | public static void Main(string[] args) { | ||
+ | Console.WriteLine(" | ||
+ | // .. | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | )) nutzen. | ||
+ | |||
+ | ===== Links ===== | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * Wer der englischen Sprache mächtig ist, findet bei [[http:// | ||
+ | |||
+ | ---- | ||
+ | [[privat: |
schule/c-sharp_programmieruebungen.txt · Zuletzt geändert: 2019-12-16 15:19 von marco.bakera