Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - ¡Micronet!

#101
Cita de: Shell Root en 15 Noviembre 2010, 23:59 PM
Pero entonces, sería un ciclo infinito?


no porque termine hasta que la suma llegue al valor n. que se esta buscando
#102
Cita de: Akai en 15 Noviembre 2010, 20:57 PM
Código (cpp) [Seleccionar]
if (ex==9999999 && numero==9999999)


El planteamiento del problema es:

Un entero de 7 digitos... sin que pase a 8 digitos...
si el valor llega a 9999999 regresarlo al valor 0000000 si la suma no llega a tu valor indicado...

ejemplo si yo introdusco 105 (su suma me da 6) y aumento el numero para conseguir que la suma de sus valores me den 10.

Entonces un ejemplo de lo que quiero con la condicion es:

si me dan el numero de 9999999 y el numero que busco de la suma de sus valores me de 5... entonces lo regreso al valor 0000000 para que regrese otra vez al inicio y me de el numero.0000014 ...

Lh: No hagas doble post, utiliza el botón modificar.


while (sum!=n){

if (ex==9999999){
ex=0; cont+=1;
}

sum=0; ex+=1; numero=ex;



while(numero>0){
sum+=numero%10;
numero=numero/10;
}
cout<<ex<<" da el valor de: "<<sum<<endl;

cont+=1;

}



Listo ya lo encontre jejeje era solo cuestion de ordenamiento :) ya ya gracias akai =] ya te dejo de molestar... :) jejeje.
#103
Disculpen una vez mas la molestia:

while (sum!=n){
sum=0; ex+=1; numero=ex;

if (ex==9999999 && numero==9999999){
ex=0; numero=1; cont+=1;
}

while(numero>0){
sum+=numero%10;
numero=numero/10;
}
cout<<ex<<" da el valor de:"<<sum<<endl;

cont+=1;

}



Estoy usando tu codigo akai.
Lo que estoy tratando de hacer es que. cuando mi numero llegue al 9999999 me regrese 0000000 (en este caso regresara 0), pero cuando llega al 9999999 le incrementa un 1 y no me regresa el 0... me podrian ayudar :S ¿? una vez mas  :-[
#104
Cita de: Akai en 15 Noviembre 2010, 19:49 PM
Si lo introduces por teclado (por ejemplo) no da problema. El problema está en la forma que se declaran los enteros en C++:

Decimal: No empieza por 0 (para el literal 0 da igual la base).
Octal: Empiezan por 0. Ejemplo: 010 es como poner 8
Hexadecimal: Empiezan por 0x o por 0X.
Para los valores de 10 a 15 se utilizan las letras ABCDEF o también abcdef.

Entonces en el caso de que quieras trabajar con números del tipo 0xxxxx, lo tienes que introducir.





OhOhOHohO!!! muchas Gracias!!! akai! :) ^^
ahora a terminar lo que quiero conseguir xD jajaja :P
#105
Cita de: Akai en 15 Noviembre 2010, 19:28 PM
El problema con el número que tu le has puesto, es que el 0031416 lo toma como un octal, es decir, un numero en base 8. (Por ejemplo, prueba con 00981 y el compilador debería avisarte de ello).



hahahaha ya lo note y como le hago para que mne lo tome en base 10 :S?
#106
Cita de: Akai en 15 Noviembre 2010, 18:48 PM
// tómese numero como el entero del que queremos sumar sus cifras
int sum=0;
while(numero>0){
sum+=numero%10;
numero=numero/10;
}




Ve como me sale ese codigo... :S podrias explicarmelo porfas :) esque checa lo que segun hago todo esto para hacer la suma... ha y la suma debe ser 15 :S

int vec[7]={0,0,3,1,4,1,6},ex[7]={0,0,0,0,0,0,0},sum=0,i;
for (i=0;i<7;i++){
sum+=vec[i];
}cout<<sum;
int cont=0;
while(sum!=33){
cont+=1;
if (vec[7]<9){
vec[7]+=1;
cont+=1;
}
if (vec[7]==9 && vec[6]<9){
vec[6]+=1;
cont+=1;
}
if (vec[7]==9 && vec[6]==9 && vec[5]<9){
vec[5]+=1;
cont+=1;
}
if (vec[7]==9 && vec[6]==9 && vec[5]==9 && vec[4]<9){
vec[4]+=1;
cont+=1;
}
if (vec[7]==9 && vec[6]==9 && vec[5]==9 && vec[4]==9 && vec[3]<9){
vec[3]+=1;
cont+=1;
}
if (vec[7]==9 && vec[6]==9 && vec[5]==9 && vec[4]==9 && vec[3]==9 && vec[2]<9){
vec[2]+=1;
cont+=1;
}
if (vec[7]==9 && vec[6]==9 && vec[5]==9 && vec[4]==9 && vec[3]==9 && vec[2]==9 && vec[1]<9){
vec[1]+=1;
cont+=1;
}
if (vec[7]==9 && vec[6]==9 && vec[5]==9 && vec[4]==9 && vec[3]==9 && vec[2]==9 && vec[1]==9){
vec[7]=0;
vec[6]=0;  
vec[5]=0;  
vec[4]=0;  
vec[3]=0;  
vec[2]=0;
vec[1]=0;
cont+=1;
}

sum=0;
for (i=0;i<7;i++){
sum+=vec[i];
}

}


Lo pongo para que se me haga valida la pregunta. :)
y esque si hago todo eso es una gran perdida de tiempo. :S jeje
y quisiera comprender tu codigo.
ya que veo que se hace un resultado mas factible que el mio :S



Bueno el codigo que puse es parte de lo que estoi haciendo...
en si el que suma solo es esto:


for (i=0;i<7;i++){
sum+=vec[i];
}



pero tu codigo hace mas elegante el problema
#107
Cita de: Akai en 15 Noviembre 2010, 16:49 PM
Lo que tu buscas es tener un numero de la forma siguiente:

378981 y sumarlo así? 3+7+8+9+8+1

Estoy muy espeso porque me acabo de levantar de dormir, pero vendría a ser algo así:

sum=0;
while(numero<0){
sum=numero%10;
numero=numero/10;
}

Acabo de ponerlo en practica ese ciclo. pero me deja el 0 cuando imprimo sum.
:S

(y si asi quiero sumarlo)...

porque use el numero 0031416... y no me efectua nada. ya que no es menor que 0 ... y si le cambio a mayor que 0 :S me hace un break... :S
#108
Cita de: Castiblanco en 15 Noviembre 2010, 15:26 PM
Código (cpp) [Seleccionar]

int sumatoria=0;

for (int i=0; i<=7;i++)
{
sumatoria += V[i];
}



Castiblanco de echo asi lo hice... pero no lo quiero tener como vector lo quiero como un int. para que se me haga mas facil. 

Lo quiero como int... sume sus valores y que me arroje su resultado pero mantener como int y no como un vector. :S
#109
CitarSupongamos que tengo 7 digitos, de esos 7 digitos me tiene que dar la suma del numero 30.

Yo ingreso el valor de 0031416, este valor sumando sus numeros me da el valor de 15.

Entonces tengo que sumarle un numero y volver a sumar ese numero. si mi numero llega al numero 9999999...y no me da el numero deceado regresarlo al numero 0000000.

Y saber cuantos numeros se le incrementa a 0031416 para que llegue al valor 30 en este ejemplo.


Mi pregunta es... como hago que un Int... sume sus valores 1 por uno...¿? y mantenerlo como int.

Ya que no encontre una manera facil de hacerlo... yo lo que utilice fue un vector

int V[0,0,3,1,4,1,6].... pero se me hace un codigo extenso con los excesos de if's que llego a utilizar.

Entonces esa es mi pregunta.
#110
Oh muchisimas gracias mini_nauta!
=]

me va a servir esa informacion que me diste muchas gracias... :)
investigare :)
:D