Considereu aquest programa (del qual s’han suprimit les inclusions):
void escriu(int n) {
if (n > 0) {
escriu(n - 1);
cout << ' ' << n;
escriu(n - 1);
}
}
int main() {
int n;
while (cin >> n) {
escriu(n);
cout << endl;
}
}
A l’exemple d’entrada i de sortida d’aquest exercici veureu què escriu aquest programa per a cada nombre llegit.
Sense modificar gens el @main()@, reimplementeu el procediment @escriu(n)@ sense fer cap crida, recursiva o no, de manera que la sortida del programa no canviï.
L’entrada consisteix en diversos naturals estrictament positius.
Per a cada nombre, escriviu una línia idèntica a l’escrita pel programa donat.
Per resoldre aquest exercici, els únics contenidors que hauríeu d’usar són piles.
Input
1 2 3 4
Output
1 1 2 1 1 2 1 3 1 2 1 1 2 1 3 1 2 1 4 1 2 1 3 1 2 1