Programación C++ Ayuda

Iniciado por ANONIMO26, 29 Abril 2020, 01:51 AM

0 Miembros y 1 Visitante están viendo este tema.

ANONIMO26

Cargue una tabla con asteriscos formando la letra N. Imprima la Matriz. :huh:
eh intentado pero no se me muestra la Letra N . :-(

#include<iostream>
#include<conio.h>
using namespace std;
main()
{
    int i,j;
   char N[5][5]= {'   '};
   for(i=0;i<5;i++);
   {
    for(j=0;j<5;j++)
       N [j]= '*';
       i =4;
   }
       for(i=1;i<4;i++)
       N
  • = '*';
          
           for(j=1;j<4;j++)
           N [2][j]= '*';
            
            for(i=0;i<5;i++)
             {     
            for(j=0;j<5;j++)
            cout  << N [j] <<"   ";
            cout <<endl ;
                }
             

        return 0;
           
    }


    Código (cpp) [Seleccionar]

K-YreX

Recoloca el código para que quede entre las dos etiquetas de code. No hay forma de ver bien tu código...

Para mostrar la N solo tienes que rellenar la primera y última columna de la matriz con asteriscos y la diagonal principal que ya te adelanté en el otro tema cómo hacerlo.
Código (cpp) [Seleccionar]

// Rellenar primera columna. Para la ultima columna es igual cambiando el 0 del corchete por (size-1).
for(int i = 0; i < size; ++i){
  matriz[i][0] = '*';
}

// Rellenar diagonal principal
for(int i = 0; i < size; ++i){
  matriz[i][i] = '*';
}


No entiendo por qué tanto bucle for() y por qué cambias los valores del contador del for() dentro de éste...
Código (cpp) [Seleccionar]

cout << "Todos tenemos un defecto, un error en nuestro código" << endl;

@XSStringManolo

#2
Haz una cuadrícula para orientarte.

**0000*
*0*000*
*00*00*
*000*0*
*0000**


Primera fila (linea horizontal):
[0] = *
[1] = *
[2] = 0
[3] = 0
[4] = 0
[5] = 0
[6] = *


Segunda linea horizontal:
[0] = *
[1] = 0
[2] = *
[3] = 0
[4] = 0
[5] = 0
[6] = *



Tercera linea horizontal:
[0] = *
[1] = 0
[2] = 0
[3] = *
[4] = 0
[5] = 0
[6] = *




....


Es obvio el patrón no?
-El primero y el último caracter siempre son asteriscos.
-Se inicia en la segunda posición y acaba en la penúltima.
-Aumenta en una posición por cada fila.


for (int i = 1; i < (fila.length - 1); ++i) {
fila[i] = *;
todo lo demás menos 0 y 6 son ceros.
}



Así recorrerías todos los caracteres de una fila.
Como hay 5 filas...


Piensalo bien, ayúdate de un papel... Hazlo en papel, pásalo a código...


Si te damos el código hecho vas a estar siempre en las mismas con cada ejercicio.