Entwickler-Ecke
Basistechnologien - C# Übungen zu Verzweigungen
Chibicloud - Di 05.10.10 20:28
Titel: C# Übungen zu Verzweigungen
Abend zusammen,
nun ich bin relativ neu in diesem Gebiet, spricht C#.
Und zwar hätte ich ein paar Fragen zu bestimmtem Aufgaben, die ich von einem Kollegen bekommen habe, jedoch besitzte ich momentan das Buch nicht, aufgrund der Tatsache, dass ich es in der Schule liegen gelassen habe.
Aufgabe 1)
Es soll ein einzelnes Zeichen (Typ Char) von der Tastatur eingelesen werden. Handelt es sich um ein Vokal, so erfolgt die Bildschirmausgabe ,,Sie haben einen Vokal eingegeben!".In allen anderen Fällen erfolgt die Ausgabe: ,, Sie haben einen Konsonanten eingegeben".
Aufgabe 2)
Sie sollen ihr Geburtsjahr in eine Ganzzahl-Variable eingeben lassen. Durch Vergleich mit dem aktuellen Kalenderjahr ( in einer weiteren Ganzzahl-Variable) soll ermittelt werden und auf den Bildschirm ausgegeben werden, ob sie schon volljährig sind oder nicht.
Das sind 2 Aufgaben von 5.
Ich will nicht so sein, dass ich euch direkt alles gebe, sondern den Rest erstmal selbst ohne Buch probieren.
Ich hoffe sehr, dass jemand mir ein wenig helfen kann
------------
Mein Forschritt:
Nun bei Aufgabe 1)
char eingabe;
Console.WriteLine("Bitte geben sie ein einzelnes Zeichen ein");
eingabe = Convert.ToChar(Console.ReadLine());
if (eingabe =
Wie kriege ich hin, dass ich nach Vokalen checken kann?
Trashkid2000 - Mi 06.10.10 07:05
Hallo und
:welcome: im Forum.
Also, zur ersten Aufgabe:
Du könntest Dir erstmal ein char[] anlegen, das alle Vokale enthält. Sind ja nur 5.
Wenn ein Zeichen eingegeben wurde könntest Du dann abfragen, ob sich der eingegebene Wert im Array befindet.
z.B. so:
C#-Quelltext
1: 2:
| if (vocals.Contains(eingabe)) |
Aber Du könntest in der Verzweigung genauso gut auf jeden einzelnen Vokal prüfen, und die Bedindungen durch ODER verknüpfen.
LG, Marko
Chibicloud - Mi 06.10.10 08:10
Erst einmal Danke für deine Antwort ich habe bereits beide Aufgaben lösen können mit bisschen rumwürgen. :P
Aufgabe1)
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| char eingabe;
Console.WriteLine("Bitte geben sie ein einzelnes Zeichen ein"); eingabe = Convert.ToChar(Console.Read());
if (eingabe == 'a' || eingabe == 'e' || eingabe == 'i' || eingabe == 'o' || eingabe == 'u') { Console.WriteLine("Sie haben ein Vokal eingegeben"); } else { Console.WriteLine("Sie haben einen Konsonanten eingegeben"); } Console.ReadKey() |
Aufgabe2)
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| int eingabe; int aktuell = 2010;
Console.WriteLine("Bitte gib dein Geburtsjahr ein !");
eingabe = int.Parse(Console.ReadLine());
if (aktuell - eingabe >= 18) { Console.WriteLine("Glückwunsch, du bist volljährig !"); } else { Console.WriteLine("Ah tut mir Leid, du darfst nicht alleine Auto fahren ! ;)"); } Console.ReadKey(); |
Moderiert von
Kha: C#-Tags hinzugefügt
Trashkid2000 - Mi 06.10.10 08:35
Na gut.
Aber zur ersten Aufgabe: Wenn ein Grossbuchstabe als Vokal eingegeben wurde, wird dieser durch Deine Bedingungen nicht als Vokal erkannt, da Du da nur kleine Vokale drin behandelst.
Ansonsten fehlt natürlich auch eine Fehlerbehandlung für ungültige Eingaben.
Marko
Melo - Fr 08.10.10 15:54
Aufgabe 2 würde ich an deiner Stelle noch ein wenig überarbeiten.
1. Ist es doch mühsam jedes Jahr deinen Integer manuell zu erhöhen.
2. Rechnest du nur mit Jahren. Das heisst jeder vom Jahrgang 92 ist schon 18.
Schau dir vlt. mal DateTime an, damit kriegst du das aktuelle Datum und kannst damit rechnen.
huuuuuh - Sa 09.10.10 10:22
bei aufgabe 1 wäre zwar die lösung von Trashkid2000 am schönsten, allerdings kannst du diese aufgabe auch mit switch...case lösen, was für das verständnis vielleicht garnicht so schlecht ist...
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30:
| char eingabe;
Console.WriteLine("Bitte geben sie ein einzelnes Zeichen ein"); eingabe = Convert.ToChar(Console.Read());
eingabe = eingabe.ToLower(); switch (eingabe) { case 'a': Console.WriteLine("Sie haben ein Vokal eingegeben"); break; case 'e': Console.WriteLine("Sie haben ein Vokal eingegeben"); break; case 'i': Console.WriteLine("Sie haben ein Vokal eingegeben"); break; case 'o': Console.WriteLine("Sie haben ein Vokal eingegeben"); break; case 'u': Console.WriteLine("Sie haben ein Vokal eingegeben"); break; default: Console.WriteLine("Sie haben einen Konsonanten eingegeben"); break; } Console.ReadKey(); |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!