Goscha Geschrieben 5. Dezember 2006 Geschrieben 5. Dezember 2006 hallo, ich bin im ersten Jahr meiner Ausbildung. wir habe eine Aufgabe bekommen, da wo eine angegebene Zahl (von 0 bis 99) mit Wörtern ausgegeben werden sollte.Aber nur mit switch Anweisung, weil wir das zur Zeit machen (und es sollten ungefähr 10 case´s sein) ich weiß nicht wie das geht.(ich habe schon verschiedene Sachen ausprobiert, es hat trozdem nicht geklappt.) danke.
Melkor Geschrieben 5. Dezember 2006 Geschrieben 5. Dezember 2006 Hi Goscha, sag uns doch wo du genau Probleme hast. Du wirst hier niemanden finden, der dir deine Aufgaben komplett löst. Davon lernst du nämlich nix
Guybrush Threepwood Geschrieben 5. Dezember 2006 Geschrieben 5. Dezember 2006 Naja also mir wäre keine fertige Funktion bekannt die dir eine Zahl in das entsprechende Wort umwandelt. Du musst das also selbst erledigen. Entweder legst du dir ein Array an das 100 Einträge hat (also Null bis Neunundneunzig) und gibst dann einfach mit dem entsprechenden Index aus. Oder du überlegst dir wie du mit wenigen Wörtern die größeren Zahlen zusammenbauen kannst. Das erste ist sicherlich die einfachere Lösung aber dafür nicht sonderlich schick und du musst viel tippen
Rondario Geschrieben 5. Dezember 2006 Geschrieben 5. Dezember 2006 Überleg' einfach wie du große Zahlenworte in kleine Einzelteile zerlegen kannst. (ab 13 ist das nämlich schön regelmäßig) Welches Zahlenwort zu erschaffen musst, kannst du dann auch recht leicht sehen indem du die Zahlen als Ziffernfolge betrachtest und nicht als Einheit. Tipp: Siebzig (70), Einundsiebzig (71), Zweiundsiebzig (72), ... Neunzig (90), Einundneunzig (91), Zweiundneunzig (92), ...
Hakawamu Geschrieben 5. Dezember 2006 Geschrieben 5. Dezember 2006 na komm goscha, das schaffste doch allein =)
MofeMike Geschrieben 18. Dezember 2006 Geschrieben 18. Dezember 2006 Ich hab solch ein Script schon mal geschrieben. Aber nicht in C++ sondern in PHP. Schau mal. Vll. Hilft dir der CODE: <html> <head> <title>Ausgabe der Ziffern</title> </head> <body> <?PHP $gesendet = $_POST['gesendet']; if(!$gesendet) { ?> <form action="Zahlenausgabe_Array_tausend.php" method="POST"> <input type="text" name="zahl" size="10" maxlength="3"> <input type="submit" value="Absenden"> <input type="hidden" name="gesendet" value=1> <?PHP $ziffer = $_POST['zahl']; $ziffern = array ( "einer" => array ("0" => "Null", "Eins", "Zwei", "Drei", "Vier", "Fuenf", "Sechs", "Sieben", "Acht", "Neun", "Zehn", "Elf", "Zwoelf", "Dreizehn", "Vierzehn", "Fuenfzehn", "Sechzehn", "Siebzehn", "Achtzehn", "Neunzehn"), "zehner" => array ("2" => "zwanzig", "dreißig", "vierzig", "fuenfzig", "sechzig", "siebzig", "achtzig", "neunzig"), ); foreach ($ziffern as $key => $value) { if ($ziffer <= 19 && $key == "einer") { echo $value[$ziffer]; } elseif ($ziffer%10 == 0 && $key == "zehner") { $ergebnis = $ziffer/10; echo $value[$ergebnis]; } else { $ergebnis1 = $ziffer%10; $ergebnis10 = $ziffer/10; if ($key == "einer") echo $value[$ergebnis1] . "und"; if ($key == "zehner") echo $value[$ergebnis10]; } } if ($ziffer >= 100) echo "Die Zahl muss kleiner 100 sein"; echo "<br>"; echo "<a href='Zahlenausgabe_Array_hundert.html'>Zurück</a>" ?>[/PHP]
Guybrush Threepwood Geschrieben 18. Dezember 2006 Geschrieben 18. Dezember 2006 Irre ich mich oder würde der "Einsundzwanzig" schreiben?
MofeMike Geschrieben 18. Dezember 2006 Geschrieben 18. Dezember 2006 ja da hast recht. Ist noch ein Bug. Da müsste man noch ein weiteres Array machen, mit den ganzen Zahlen, die sich ändern.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden