elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 [8]
71  Programación / Programación C/C++ / Re: programa que muestre los números naturales mas pequeños que n en: 19 Octubre 2012, 20:05 pm
muchas gracias por la explicación,

tomando que i=i+1 también se obtiene la sucesión decreciente.

Código:
#include<iostream>
using namespace std;

int main(){
    int n,i;
    cin>>n;
    i=n+1;
    while (i>0){
          i--;
       
                cout<<i<<endl;} 
   
system ("PAUSE");
return 0;
}


72  Programación / Programación C/C++ / Re: programa que muestre los números naturales mas pequeños que n en: 19 Octubre 2012, 19:44 pm
Le estás asignando a "i" dentro del while "n - 1", al no variar la variable "n", esa asignación siempre va a dar lo mismo y por ende nunca sale del loop.

Solución: lo que tenés que modificar dentro del while es el valor de "i".

Si lo querés recorrer de N..0 tenés que:
  • Inicializar "i" con "n - 1" (asignarselo antes del while)
  • Dentro del while decrementar la variable "i" en 1, o sea "i--;".
  • La condición del while debería de ser mientras que "i" sea mayor a 0.

Para esto también podrías usar un for:

Código:
#include<iostream>
using namespace std;

int main(){
    int n;
    cin>>n;
    for(int i = n - 1; i > 0; i--) {
        cout<<i<<endl;
    }    
    system ("PAUSE");
    return 0;
}

Muchas gracias por el aporte, pero en los ejercicios solo puedo utilizar while, si lo hago sin usar for, al dar un número empieza la sucesión con -1, es decir 7 hace 5,4,3,2,1.

Código:
#include<iostream>
using namespace std;

int main(){
    int n,i;
    cin>>n;
    i=n-1;
    while (i>0){
          i=i-1;
       
                cout<<i<<endl;} 
   
system ("PAUSE");
return 0;
}

73  Programación / Programación C/C++ / programa que muestre los números naturales mas pequeños que n en: 19 Octubre 2012, 19:13 pm
Hola, quiero hacer un programa que al introducirle un número natural n, calcule sus números menores hasta el 1.  Ej de 7, 6,5,4,3,2,1

He echo lo siguiente pero solo me calcula el primer n-1 y sigue infinitamente,

Código:
#include<iostream>
using namespace std;

int main(){
    int n,i=0;
    cin>>n;
    while (i<n){
        i=n-1;
       
        cout<<i<<endl;} 
   
system ("PAUSE");
return 0;
}

Gracias por la ayuda :D
74  Programación / Programación C/C++ / Re: ayuda en calcular un programa en: 19 Octubre 2012, 19:10 pm
Gracias rir3760
75  Programación / Programación C/C++ / Re: ayuda en calcular un programa en: 17 Octubre 2012, 23:27 pm
así perdón, es dividido siempre entre 10, n/10.
76  Programación / Programación C/C++ / Re: ayuda en calcular un programa en: 17 Octubre 2012, 22:06 pm
el residuo de 4 sería 1. El de 426 por ejemplo sería 6 + 2 + 1
77  Programación / Programación C/C++ / Re: ayuda en calcular un programa en: 17 Octubre 2012, 21:04 pm
gracias rir3760 por tu ayuda :).

Ahora quiero hacer algo más simple, es calcular la suma de los residuos de un número entero dado. He echo esto pero no me lo calcula. Espero que veáis que le falta al programa.

Código:
#include<iostream>
using namespace std;

int main()
{
    int n;
    int mod, suma=0;
    cin>>n;
    while(n>0)
    {
              
              mod=n%10;
              suma=suma+mod;}
    cout<<suma<<endl;
system ("PAUSE");
return 0;
}
78  Programación / Programación C/C++ / ayuda en calcular un programa en: 17 Octubre 2012, 17:25 pm
Hola,
quiero crear un programa que yo dé un número n y calcule la suma de sus cifras.

Manualmente lo que debería hacer el programa es: Ej. el número 423

Dividiría el 423 entre 10, 423/10= 42 (Divisor) y 3 (Residuo), 42/10= 4(Divisor) y 2 (Residuo) y 4/10= 0 (Divisor) y 1 (Residuo), entonces en el programa se debería sumar todos los residuos es decir 3+2+1 y sumarle el último numerador 4 y restarle el último residuo 1.

((3+2+1)+(4))-1=9 Da el número de cifras de n.

Yo he echo esto, pero no me calcula exactamente lo que quiero, si me pudierais corregir estaría muy agradecido.  :rolleyes:

Código:
#include<iostream>
using namespace std;

int main()
{
    int n;
    cin>>n;
    int suma=0;
    while(n>0)
    {
              suma=(n%10);
              suma=(n%10)+n-1;
              n=n/10;}
    cout<<suma<<endl;
system ("PAUSE");
return 0;
}

Páginas: 1 2 3 4 5 6 7 [8]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines