Int to Array
-
Hallo!
Gibt es eine Möglichkeit meinetwegen die Zahl 100 in ein int-Array so abzulegen, dass array[0]=0, array[1]=0 und array[2]=1 sind?
-
Du könntest die Zahl ja in Zehnerpotenzen zerlegen z.B. 12345 = 10^4 + 2*10^3 + 3*10^2 + 4*10^1 + 5*10^0 und dann die jeweileige Ziffer in dein Feld an passender Stelle einfügen.
-
Problem dabei ist: Ich weiß nicht, wie viele Stellen meine Zahl haben wird.
-
Wie bekommst du die Zahl denn? Etwas mehr Infos solltest du schon bringen...
-
derFragende schrieb:
Problem dabei ist: Ich weiß nicht, wie viele Stellen meine Zahl haben wird.
Naja, du wirst ja in irgendeiner Weise die Zahl vorher nochmal durchscannen müssen, weil du ja auch wissen musst, wie groß du dein Array gestalten musst
Und zur not kannst du ja die Zerlegung ganz dynamisch gestalten. Bestimmst halt die Anzahl n der Stellen der Zahl und läßt die Potenzen von n-1 bis 0 laufen. Also am Beispiel 12345, n = stellen(12345) (= 5) -> 12345 = 10^n-1 + 2*10^n-2 + ...
-
Nun ja, die Aufgabe, die ich bewältigen soll ist die:
Das Programm soll alle Palindrome, die aus dem Produkt zweier fünfstelliger Ganzzahlen entstehen, auf den Bildschirm ausgeben.
Die Produkte generiere ich dann mit zwei Schleifen:
[code]
for(i=10000;i<=99999;i++){
for(j=10000;i<=99999;j++){
produkt = i*j;
}
}Und nun muss ich auswerten, ob "produkt" ein Palindrom ist.
Als Beispiel: 1001 ist ein Palindrom, 56765 ist ebenso einer, usw.
-
Edit:
for(i=10000;i<=99999;i++){ for(j=10000;i<=99999;j++){ produkt = i*j; }
Gut. Ich könnte natürlich alle möglichen Stellenanzahlen mittels einer Switch-Anweisung abfangen. Gibt es da aber keine schönere Möglichkeit?
-
Du könntest mit itoa deine Zahl in ein char* umwandeln. Anschließend könntest du durch den char* mit einer Schleife gehen...
-
Ah, Mist! Habs mit itoa total verpeilt. Danke