URGENT!! C++
Fie un număr natural N citit de la tastatură. Acestuia i se aplică în mod repetat următoarele transformări:
- Dacă N este par, devine N/2
- Dacă N este impar, devine 3*N+1
Pentru orice număr natural, în urma transformărilor numărul devine 1.
Pentru un N citit de la tastatură, determinați șirul și numărul de termeni din șirul de transformări după regula de mai sus.
Date de intrare:
Numărul N, număr întreg cu semn reprezentat pe 32 biți.
Date de ieșire:
Pe prima linie șirul obținut în urma aplicării transformărilor. Pe a doua linie numărul de termeni.
Exemplu:
Date de intrare: 6
Date de ieșire: 6 3 10 5 16 8 4 2
8
Anexe:
Răspunsuri la întrebare
Răspuns de
1
Răspuns:
#include <iostream>
int main()
{
unsigned long int numar;
int pasi = 0;
std::cout << "Număr: ";
std::cin >> numar;
while (numar != 1) {
std::cout << numar << " ";
numar = numar % 2 ? 3 * numar + 1 : numar / 2;
pasi++;
}
std::cout << std::endl << pasi << std::endl;
}
code123:
bro ce trebui schimbat ca la output sa arata asta
8
Alte întrebări interesante
Limba română,
8 ani în urmă
Fizică,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Istorie,
9 ani în urmă
Engleza,
9 ani în urmă