Ciao a tutti
Sto cercando di costruire una routine che dato un numero intero pari in input mi stampi a video tutti i numeri divisibili per due.
La routine deve terminare quando n=1
Ad esempio inserisco 8.
Quindi nel primo ciclo farà 8/2=4, il secondo poi 4/2=2, poi 2/2=1 e quindi si ferma perché n=1
Ho provato con questo codice ma è sbagliato perché si ferma alla prima divisione, non riesco a capire come iterare il ciclo
Grazie
codice:
#include <iostream>
using namespace std;
int main (){
int n,ris;
//imposto le variabili
ris=0;
n=0;
cout<<"Inserisci numero intero maggiore di zero"<<endl;
cin>>n;
do {
if(n%2==0)
{
ris=n/2;
n=ris;
cout<<ris;
}
} while(n==1);
}