Übungen / Aufgaben zu C#

0 Lösungen
Zoo mittels einer Factory-Methode
Fortgeschrittener - C# von Exception - 12.09.2020 um 16:36 Uhr
Hallo zusammen,

heute erzeugen wir einen Zoo!

Erzeugt hierfür eine Basisklasse (oder Interface) "Animal" und einige Klassen die davon erben (z.B. "Lion", "Penguin", "Crocodile", "Snake").

Als nächsten Schritt wollen wir nun eine Factory-Klasse erzeugen, die sich am "Factory-Method-Pattern" orientiert.
In dieser Klasse soll eine Methode "createAnimal" existieren, die ein "Animal" zurückgibt.
Welches "Animal" zurückgegeben wird überlassen wir vorerst dem reinen Zufall ;)
Daher kann diese Klasse auch "RandomAnimalFactory" genannt werden.

Lasst nun 200 "Animals" in den Zoo einziehen.

Wie ist die Verteilung der "Animals" einer jeden Spezies in unserem Zoo?

Es kann mit der zufälligen Erzeugung zu einem gewissen Ungleichgewicht kommen.
So fühlt sich ein einzelner Pinguin gegen 199 Löwen sicher etwas in der Unterzahl ...

Erstellt nun eine zweite Factory-Klasse "BalancedAnimalFactory".
Diese soll ebenfalls die Methode "createAnimal" enthalten.

(Macht es nun evtl. Sinn sich auch bei den Factory-Klassen über ein Interface gedanken zu machen?)

Diese Factory soll nicht mehr komplett zufällig Tiere erzeugen sondern etwas ausgeglichener.
Die dort vorhandene "createAnimal" Methode soll wie folgt funktionieren:
Angenommen wir haben vier Tier-Klassen ("Lion", "Penguin", "Crocodile", "Snake").
Wird nun ein "Lion" erzeugt, so wird für die nächsten beiden Erzeugungen kein "Lion" mehr erzeugt.

Lasst nun erneut 200 "Animals" einziehen - vielleicht in einen zweiten "Parkabschnitt" (Array)? :)
Muss sich der Pinguin noch immer Sorgen machen?

Viel Spaß!
5 Lösungen Lösungen öffentlich
Wochentage einlesen und in einem Array ausgeben
Anfänger - C# von Cara - 14.05.2020 um 23:46 Uhr
Schreiben Sie ein Programm, das die Wochentage in einliest und sie in
einem Array (vom Typ string [ ]) ablegt und danach ausgibt.
5 Lösungen Lösungen öffentlich
n Zahlen einlesen und deren Quadrate speichert und ausgibt
Anfänger - C# von Cara - 14.05.2020 um 23:46 Uhr
Schreiben Sie ein Programm, dass n Zahlen einliest und deren
Quadrate in einem Array speichert und sie danach ausgibt.
(Die Zahl n soll vom Benutzer abgefragt werden.)
0 Lösungen
Wettervorhersage als Text formulieren
Fortgeschrittener - C# von Gnom - 13.05.2020 um 00:54 Uhr
Schreibe ein Programm, das eine Wettervorhersage (erstmal nur Temperaturen) als Text fomuliert.
Als Ausgangsinformationen dienen vier Temperaturangaben für vormittags, nachmittags, abends und nachts.
Das Programm soll die Sätze variantenreich formulieren, z. B. abhängig davon, ob es im Laufe des Tages kälter oder wärmer wird oder ob die Temperaturen sehr kalt, mäßig, warm oder heiß sind. Für gleichartige Sachverhalte kann auch per Zufallsgenerator zwischen verschiedenen gleichwertigen Formulierungen gewählt werden.

Erweiterung 1:
Es wird zusätzlich ein Datum angegeben. Die Formulierungen orientieren sich dann zusätzlich an Temperatur-Druchschnittswerten des jeweiligen Monats.
(Tageshöchsttemperatur Jan-Dez: 2, 3, 8, 12, 18, 21, 23, 23, 19, 14, 7, 4 - Tiefsttemperaturen nachts Jan-Dez: -2, -3, 1, 4, 9, 12, 14, 14, 11, 7, 3, 0)

Erweiterung 2:
Vergleichbares kann man für Angaben zu Sonne/Bewölkung, Niederschlägen (Regen, Schnee) bzw. Niederschlagsmengen und Windstärke/-richtung ergänzen.
(Niederschlagsmengen in mm Jan-Dez: 42, 30, 39, 36, 42, 72, 51, 45, 45, 30, 45, 57)

Erweiterung 3:
Sonderwetterlagen können zusätzlich eingebracht werden, z. B. Gewitter, Nebel, Hagel, Starkregen, Blitzeis.

Quelle Klimadaten für Berlin: https://www.klimatabelle.info/europa/deutschland
1 Lösung Lösung öffentlich
Mehrdimensional zu Eindimensional
Anfänger - C# von Exception - 11.05.2020 um 08:38 Uhr
Das folgende mehrdimensionale Array soll zu einem flachen, eindimensionalen Array umgewandelt werden. Viel Spaß.
Quellcode ausblenden PHP-Code
$a = [
	0 => 'Text 0',
	1 => 'Text 1',
	2 => 'Text 2',
	'A' => [
		0 => 'Text A 0',
		1 => 'Text A 1',
		2 => 'Text A 2',
	],
	'B' => [
		'A' => [
			0 => 'Text B A 0',
			1 => 'Text B A 1',
			2 => 'Text B A 2',
		]
	]
];


4 Lösungen Lösungen öffentlich
Rationale Zahlen einlesen: Mittelwert,Produkt und das Maximum ermitteln
Anfänger - C# von Cara - 10.05.2020 um 21:54 Uhr
Schreiben Sie ein Programm, das n rationale Zahlen einliest / einlesen kann und den Mittelwert, das Produkt und das Maximum dieser Zahlen ermittelt und ausgibt.
6 Lösungen Lösungen öffentlich
Schreiben Sie eine Methode, die 10 Integerzahlen vom Benutzer einliest und in einem Array abspeichert.
Anfänger - C# von Cara - 10.05.2020 um 21:52 Uhr
Schreiben Sie eine Methode, die 10 Integerzahlen vom Benutzer einliest und in einem Array abspeichert.
1 Lösung Lösung öffentlich
WHtR (Waist to Height Ratio) berechnen
Anfänger - C# von JKooP - 10.05.2020 um 09:17 Uhr
Schreibe ein Programm zur Ermittlung des WHtR- Wertes aus Taillenumfang + Körpergröße und der daraus resultierenden Bewertung.

Es sollen sowohl das Geschlecht (m/w) als auch das Kindesalter bzw. der Altersfaktor für Erwachsene berücksichtigt werden.

Viel Spaß
2 Lösungen Lösungen öffentlich
Abschätzung der Gewinnchancen eines KENO-Types
Anfänger - C# von hollst - 08.05.2020 um 22:39 Uhr
Zur Erinnerung, was ist KENO: Aus 70 Zahlen werden 20 Gewinnzahlen per Zufallsgenerator ermittelt.
Es gibt die KENO-Typen 2, 3 ... 10, d. h. man kann 2, 3 ... 10 Zahlen aus den Zahlen 1 ... 70 wählen.

Bei KENO-Typ N können 0, 1 ... N gewählte Zahlen in den 20 gelosten Gewinnzahlen enthalten sein
(je mehr, desto höher natürlich der Gewinn).

Die Programmieraufgabe bestehe darin, mittels stochastischer Simulation die Wahrscheinlichkeit dafür abzuschätzen,
wie hoch die Chance ist, bei KENO-Typ N, 0, 1, 2 ... oder gar N Richtige auf seinem Tippzettel zu haben?

Die exakten Werte könnt ihr u. a. z. B. auf
https://www.sachsenlotto.de/portal/spiele/keno/gewinnquoten.jsp
nachsehen.
3 Lösungen Lösungen öffentlich
Quadratzahlen zwischen 1 und 100
Anfänger - C# von DeinError404 - 30.04.2020 um 23:42 Uhr
Schreibe ein kleines Programm, das die Quadratzahlen zwischen 1 und 100 ausgibt. (Nicht die ersten 100 Quadratzahlen, die Aufgabe gibt es schon.)
1 Lösung Lösung öffentlich
Zahlen in Wörtern ausdrücken
Anfänger - C# von Gisbert5020 - 30.04.2020 um 15:17 Uhr
Schreiben Sie ein Programm, das Zahlen von 0 bis 99 in Wörtern fasst.
Zusatzaufgabe : Erweitern Sie das Programm von 0 bis 1000.
1 Lösung Lösung öffentlich
Mathematische Vektoroperationen
Anfänger - C# von thunderbird - 28.04.2020 um 21:51 Uhr
Erstellen Sie ein Programm/ eine Funktion, mit der Vektorberechnungen durchgeführt werden können.
"Vektor" soll eine eigens erstellte Klasse sein, die aus 3 Fließkommazahlen bestehen.
Zudem beinhaltet die Klasse "Vektor" eine Methode zur Skalarmultiplikation, Addition, Subtraktion, Division und um das Kreuzprodukt zu berrechnen.
Erstellen Sie zur Darstellung eine Ausgabemethode.

Hinweis:
- Anstatt neue Methoden zu erstellen, können (sofern möglich) bereits vorhandene überladen werden.
- Mathematische Rechenregeln unter: https://de.wikipedia.org/wiki/Vektor