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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda c++ Escalera de numeros
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda c++ Escalera de numeros  (Leído 6,473 veces)
vladelukr

Desconectado Desconectado

Mensajes: 14


Si te caigo mal coge turno y espera que me importe


Ver Perfil WWW
Ayuda c++ Escalera de numeros
« en: 12 Febrero 2016, 21:30 pm »

Hola, estoy intentando aprender c y me he topado con el problema de que no se hacer una escalera como esta

Citar
1234
123
12
1
12
123
1234

He conseguido hacer esto
Citar
1234
123
12
1

123
123
123

Pero no se quitar el enter y tampoco hacer que regrese al 3 xD Ayuda pls

PD: mi codigo es
Citar
int pacman(int n){
    int num, lin;
    
    for(lin = 0;lin < n*2;lin++){
      
      if(lin <= n){
   for(num = 1;num <= n - lin;num++)
     cout << num;
   cout << endl;
      }
      else{
   for(num = 1;num < n;num++)
     cout << num;
   cout << endl;
      }
    }
    
    return(lin);
}


« Última modificación: 12 Febrero 2016, 21:32 pm por vladelukr » En línea

Con ansias de poder y convertirme en Hacker conocido.
Stakewinner00


Desconectado Desconectado

Mensajes: 1.426



Ver Perfil WWW
Re: Ayuda c++ Escalera de numeros
« Respuesta #1 en: 13 Febrero 2016, 01:26 am »

una solución rápida podría ser
Código
  1. #include <iostream>
  2.  
  3. //Función que imprime números desde min hasta max
  4. void print(int max, int min) {
  5.  for(int i = min; i < max; i++) {
  6.    std::cout << i+1;
  7.  }
  8.  std::cout << std::endl;
  9. }
  10.  
  11. int main() {
  12.  int n = 4;
  13.  
  14.  for(int i = 0; i < n; i++) {
  15.    //Para cada iteración el número más grande a imprimir se decrementa en uno,
  16.    print(n-i, 0);
  17.  }
  18.  
  19.  //Empezamos en uno porque el 1 ya lo imprimió el bucle anterior y sino se repetirian
  20.  for(int i = 1; i < n; i++) {
  21.    //Le sumamos 1 porque como ya tenemos el uno la ha de imprimir 12 en la primera iteración
  22.   //También se podría dejar como print(i,0) y cambiar la comparacion por i != n.
  23.    print(i+1, 0);
  24.  }
  25. }
  26.  

En vez de intentar meterlo todo en una misma función a veces es más fácil pensarlo si creas funciones auxiliares.


En línea

vladelukr

Desconectado Desconectado

Mensajes: 14


Si te caigo mal coge turno y espera que me importe


Ver Perfil WWW
Re: Ayuda c++ Escalera de numeros
« Respuesta #2 en: 13 Febrero 2016, 02:09 am »

Muchas gracias ^^
En línea

Con ansias de poder y convertirme en Hacker conocido.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines