13/10/2008, 18:06
|
| | Fecha de Ingreso: agosto-2008 Ubicación: Mi casa!!! Perú-Aqp
Mensajes: 28
Antigüedad: 16 años, 5 meses Puntos: 0 | |
Respuesta: Obtener divisores de dividir un número por 2 hola revise tu codigo y no compila
#include <iostream>
using namespace std;
int main (){ //primero en tu funcion dices q retorna un entero no puedes usar el cout abajo.
int x; divisor; i;//aqui se separa con comitas seria asi int x, divisor,i;
i=0
while(i==0){ // no entiendo para que preguntas esto siempre hara porq i en nigun momento de tu codigo cambia el
cout<<divisor=x/2<<"\n";// bueno aqui si stas buscando los divisores
}
divisor=x
else if(i==1){// aqui .... supongo q no puedes poner un else if porq primero es el if
cout<<divisor=x/2<<"\n";
} else{
cout<<divisor=x<<"\n";
}
}
trate de entender lo q hiciste y quedo algo asi
mira
void diviso (int x) // recibimos un valor x
{
int divisor=0, i=0;
cout<<"divisores: "<<endl;
while(x!=1) //mientras x sea diferente d uno hara lo d abajo
{
divisor=x/2;//dividims para sacar los divisores ejemplo 16/2=8
cout<<divisor<<endl;//imprimes el 8
x=divisor;//le das a x el nuevo valor q seria 8 valdria
}
// entra al while y pregunta 8 es diferente de uno verdadero .....entonces entra y
//divide divisor= 8/2=4
//imprimes el 4
//x recibe el valor de 4 (x= 4)
//ingresa al while nuevamente pregunta 4 es diferente de uno si
// haces mismo divisor= 4/2= 2
//imprimes 2
//x=2;
//preguntas 2 es diferente de 1 si
//divisor = 2/2=1
//imprimes 1
// entra y pregunta 1 es diferente de uno falso termina y te muestra el 8 4 2 1
}
void main()
{
int s;
cin>>s;
diviso(s);
}
//creo q quedaria algo asi espero te ayude en algo |