Wie wandeln Sie Zahlen in Text um?

8

Ich habe Objective-C mit dem Kochan-Buch gelernt, und ich kann mir nicht vorstellen, wie ich dieses Übungsprogramm machen soll. Nur ungerade nummerierte Übungen sind online aufgeführt und dieses ist gerade. Die Übung besteht darin, Zahlen in Wörter umzuwandeln. Also, wenn "932" eingegeben wurde, sollte das Programm zurückkehren: "neun drei zwei"

Ich habe eine do , while Schleife verwendet, aber die Wörter kamen rückwärts, wie in "two three nine". Kann jemand eine Technik vorschlagen, die dafür funktioniert?

%Vor%     
Nadeem 01.07.2011, 20:50
quelle

8 Antworten

12

Dies ist nicht genau was Sie wollen, aber für Ihre Betrachtung:

%Vor%

Dies wird protokollieren:

%Vor%

Noch einmal, es ist nicht die "Neun Drei Zwei", die Sie wollen, aber es ist auch schön und kurz. :)

    
Dave DeLong 01.07.2011 21:20
quelle
5

Da Sie die Zahlen zu einer Zeichenfolge hinzufügen und diese von rechts nach links berechnen möchten, müssen Sie die Zeichenfolge jeder neuen Zahl voranstellen. Etwas wie:

%Vor%

Dabei ist dieNeueNummer eine Zeichenkette (wie @ "sechs") und nummerString ist die Zeichenkette, die Sie ausgeben möchten, sobald Sie fertig sind ...

(oh, und vergessen Sie nicht, numberString vor dem Start einer Schleife zu initialisieren ... etwas wie:

%Vor%

=====

Basierend auf dem Code, den Sie gerade gepostet haben, könnten Sie das entweder mathematisch tun oder eine Zeichenfolge wie diese vorpedeln:

Fügen Sie diese Variable in Ihre .h-Datei ein:

%Vor%

Dann legen Sie das in Ihre .m:

%Vor%     
Jeffrey Berthiaume 01.07.2011 21:04
quelle
2
%Vor%

Nun, nachdem Sie Ihren Code veröffentlicht haben, wird Ihre Methode großartig funktionieren, wenn Sie die Nummer umkehren . Sie können also einfach eine kurze Routine schreiben und dann Ihren eigenen Code verwenden.

    
PengOne 01.07.2011 21:09
quelle
2

Nun, es hört sich an, als wären Sie auf halbem Wege, wenn Sie die Zahlen bereits in Wörter umwandeln könnten, selbst wenn sie rückwärts ausgegeben würden.

Angenommen, Sie durchlaufen Ihre Daten, indem Sie den Index inkrementieren, beginnen Sie einfach mit der Zeichenlänge der Zahl und dekrementieren Sie Ihren Index rückwärts, indem Sie die Ausgabe umkehren.

Wir können Ihnen nicht mehr helfen, ohne Ihren eigentlichen Code zu sehen. ;)

    
George Johnston 01.07.2011 20:54
quelle
1

Als Lernübung habe ich Daves Code modifiziert:

%Vor%     
JAL 01.07.2011 23:08
quelle
0
%Vor%     
user2669841 10.08.2013 05:16
quelle
0

Ich verwende verschachtelte unter verschachtelte Schleife, glaube aber, dass dies funktioniert

%Vor%

}

    
Ratnesh 13.11.2014 15:12
quelle
0

sehr einfach, es gibt eine Reihe von Ansätzen, aber ich versuche es normalerweise:

%Vor%     
ajjjjjjjj 21.04.2017 07:38
quelle

Tags und Links