umdrehen von Zahlen/Buchstaben in eigene Funktion "Hilfe" C++
Hallo zusammen, ich wollte ein kleines Programm schreiben, welches Zahlen/Buchstaben umgedreht wieder auswirft, dies ist mit auch gelungen, nur hätte ich das gern als Funktion, aber ich weiß nicht wie ich es anstellen soll?
hier mal der Code:
Hat jemand eine Idee, hab da sowieso ein paar probleme bei Funktionen.
hier mal der Code:
Spoiler
![]()
C/C++-Quelltext
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #include<iostream> using namespace std; void main(){ char zahl[100]; int groesse=sizeof(zahl); cin >> zahl; for(int i=groesse;i>=0;i--){ if (zahl[i]<=0){ //tu nichts!! }else{ cout << zahl[i]; } } cout << endl; }
Hat jemand eine Idee, hab da sowieso ein paar probleme bei Funktionen.
Wissen ist Gratis, Dummheit wird Teuer: Schaust du
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Armour« (26. August 2010, 14:00)
Also, wenn du sagst cin >> zahl, dann belegst du gleich alle 100 Elemente mit dem eigegebenen Wert, d.h. man würde einfach nichts Besonderes sehen, weil alle den gleichen Wert hätten.
Mein Lösungsvorschlag wäre dieser (ich habe auch noch mal die formalen Unschönheiten entfernt, die du gemacht hast):
Ich habe jetzt mal gesagt, dass der Array 10 Elemente hat, denn 100 Elemente hintereinander eingeben ist ein bisschen nervig. Ansonsten denke ich ist der Code klar...
Mein Lösungsvorschlag wäre dieser (ich habe auch noch mal die formalen Unschönheiten entfernt, die du gemacht hast):
|
|
C/C++-Quelltext |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
#include <iostream> using namespace std; const int SIZE = 10; void reverse_chars (char nums[SIZE]); int main() { char nums[SIZE]; for (int i=0; i<SIZE; ++i) cin >>nums[i]; reverse_chars(nums); } void reverse_chars (char nums[SIZE]) { for (int i=SIZE; i>=0; --i) if (nums[i] > 0) cout <<nums[i] <<'\n'; } |
Ich habe jetzt mal gesagt, dass der Array 10 Elemente hat, denn 100 Elemente hintereinander eingeben ist ein bisschen nervig. Ansonsten denke ich ist der Code klar...
Für alle die C++ lernen wollen, gibt's meine Tutorials:
http://c-plusplus.de.tc
http://c-plusplus.de.tc
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »c-plusplus« (26. August 2010, 16:40)
danke, das sieht doch deutlich angenehmer aus wie meines
, leider bin ich mit funktionen noch nicht ganz so fix, aber üben üben üben, dann wirds auch mal was
, leider bin ich mit funktionen noch nicht ganz so fix, aber üben üben üben, dann wirds auch mal was
Wissen ist Gratis, Dummheit wird Teuer: Schaust du
Also, wenn du sagst cin >> zahl, dann belegst du gleich alle 100 Elemente mit dem eigegebenen Wert, d.h. man würde einfach nichts Besonderes sehen, weil alle den gleichen Wert hätten.
Das stimmt nicht, cin >> zahl schreibt genau input + 1 Elemente in das Array, werden also "12" eingegeben, so wird {0x31, 0x32, 0x00} geschrieben, der rest der Daten bleibt uninitialisiert.
Edit: Übrigens hat dein Code das Problem, dass er die Zahl Ziffernweise einließt, bequemer aber ist es die Zahl als ganzes angeben zu können.
reverse_chars funktioniert auch nicht allgemein, man sollte die Funktionssignatur in
|
|
C/C++-Quelltext |
1 |
void reverse_chars (char *szNums, size_t size) |
Edit2: Ungetestet, sollte aber laufen:
|
|
C/C++-Quelltext |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
bool reverse_chars ( const char *szInput, const size_t sizeInput, char *szOutput, const size_t sizeOutput ) { if ( !szInput || !szOutput || !sizeInput || !sizeOutput ) return false; size_t sizeCopy = sizeInput; if ( sizeCopy > sizeOutput ) sizeCopy = sizeOutput; int k=0; for ( int i=sizeCopy; i >= 0; i-- ) if ( szInput[i] ) szOutput[k++] = szInput[i]; return true; } |
Aktuell nutze ich: Windows, Linux, MacOS X, Solaris...weil die Welt nicht nur S/W ist!
Blog
Blog
Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von »silence« (26. August 2010, 19:32)
Ähnliche Themen
-
PHP »-
preg_match() anderesrum
(5. Mai 2009, 11:14)
-
Archiv: Software »-
Excel Proper Funktion (Gross Funktion)
(12. März 2005, 15:17)
-
Plauder Forum »-
Rätsel
(24. November 2004, 14:20)
-
(X)HTML & CSS & DHTML & Javascript »-
java buchstaben deaktivieren
(22. Oktober 2003, 19:18)


