Zitat:
Original geschrieben von Bastet
bsp. 1
eingabe von 2 zeichen, alle zeichen die in der ASCII tabelle dazwischen liegen, sollen ausgegeben werden.
(eingabe: b, f; ausgabe: cde)
|
Code:
void foo ()
{
char a, b;
char i = 0;
cin.get(a);
cin.get(b);
i = a + 1;
while (i < b)
{
cout << (char)i++;
}
}
Zitat:
bsp. 2
selbes beispiel aber mit zahlen.
eingabe: 5, 13; ausgabe: 6789101112)
|
das is etwas komplizierter, weil du ja die zahl, die mehrere stellen aufweisen kann in eine zahl umwandeln musst.
das geht am leichtesten mit atoi, falls du das verwenden darfst. wenn nicht musst du die zahl händisch umwandeln.
Code:
void foo ()
{
char a[3];
char b[3];
// ich weiß den c++ code fürs einlesen von mehreren chars jetzt net
// sicher, überprüf das mal
cin >> a;
cin >> b;
int lower = atoi (a);
int upper = atoi (b);
int i = lower + 1;
while (i < upper)
{
cout << i++;
}
}
wie gesagt, wenn du atoi net verwenden darfst dann a[] und b[] durchlaufen und jeweils number += * 10^n wobei n für die pos. der ziffer steht.