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. Zitieren
julien88 Geschrieben 5. Dezember 2006 Geschrieben 5. Dezember 2006 und jetzt ? Fragestellung ? Zitieren
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 Zitieren
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 Zitieren
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), ... Zitieren
Hakawamu Geschrieben 5. Dezember 2006 Geschrieben 5. Dezember 2006 na komm goscha, das schaffste doch allein =) Zitieren
TDM Geschrieben 6. Dezember 2006 Geschrieben 6. Dezember 2006 Spontan würd ich auf Modulo verweisen. Zitieren
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] Zitieren
Guybrush Threepwood Geschrieben 18. Dezember 2006 Geschrieben 18. Dezember 2006 Irre ich mich oder würde der "Einsundzwanzig" schreiben? Zitieren
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. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.