Tengo que imprimir un arreglo pero no se como darle forma

Hola
Tengo una duda y quisiera que alguien m ayudara.
Tengo que imprimir un arreglo pero no se como darle la forma siguiente :
1 2 3
4 5 6
7 8 9
mi codificacion es la siguiente :
#include <iostream>
#include <conio>
#include <stdlib>
int Leer(void);
void Leer(float Matriz[20][20], const int N);
void Diagonal(float Matriz[20][20],const int N,float X[] );
void Imprimir(float Matriz[20][20], const int N);
void Imprimir(const float X[], const int N);
int main (void)
{
  int N;
  float Matriz[20][20];
  float X[20];
  N=Leer();
  Leer (Matriz,N);
  Diagonal(Matriz,N,X);
  Imprimir(Matriz,N);
  Imprimir(X,N);
  system("pause");
  return(0);
}
int Leer (void)
{
  int N;
  cout<<"numero de valores "<<endl;
  cin>>N;
  return (N);
}
void Leer(float Matriz[20][20], const int N)
{
  int i,j;
  cout<<"Ingrese los  valores de la matriz"<<endl<<endl;
  for (i=0;N>i;i++)
    for (j=0;N>j;j++)
    cin>>Matriz[j];
}
void Diagonal(float Matriz[20][20],const int N,float X[])
{
  int i;
  for (i=0;N>i;i++)
  X=Matriz;
}
void Imprimir(float Matriz[20][20], const int N)
{
  int i,j;
  cout<<"la matriz"<<endl<<endl;
  cout<<endl;
  for (i=0;N>i;i++)
  for (j=0;N>j;j++)
  cout<<Matriz[j]<<"   "<<endl;
}
void Imprimir(const float X[], const int N)
{
 cout <<"los valores de la diagonal son:";
 for(int i=0;N>i;i++)
   cout << X << "    ";
 cout << endl << endl;
}
Agradecería si me pudieran ayudar ...

1 Respuesta

Respuesta
1
Algo sencillo que te funcionara si los números no son demasiado grande:
for (i=0;N>i;i++) 
  for (j=0;N>j;j++) 
        cout<<Matriz[j]<<"\t"<<endl;
Solo se trata de poner una tabulacion entre cada valor:
tambien puedes probar:
for (i=0;N>i;i++)

  printf("\n"); //Salto de linea
  for (j=0;N>j;j++) 
  {
        printf("%06.3f ", Matriz[j]); //Se imprime los float con 3 decimales y un tamaño fijo de 6
   }
}
hola gracias x la ayuda pero el formato d salida sigue siendo el mismo
sigue saliendo los numeros en una sola line y ya le hice las correciones d acuerdo a lo q
me recomentast;
void Imprimir(float Matriz[20][20], const int N)
{
  int i,j;
  cout<<"la matriz"<<endl<<endl;
  cout<<endl;
  for (i=0;N>i;i++)
  for (j=0;N>j;j++)
  cout<<Matriz[j]<<"\t"<<endl;
}
Te agradecería si m pudieras ayudar .
Te falta un indice en la matriz:
or (i=0;i<N;i++)  
  for (j=0;J<N;j++)  
        cout<<Matriz[j]<<"\t"<<endl;
for (i=0;i<N;i++) 
{  
  printf("\n"); //Salto de linea 
  for (j=0;i<N;j++)  
  { 
        printf("%06.3f ", Matriz[j]); //Se imprime los float con 3 decimales y un tamaño fijo de 6 
   } 
}
Si eso no te va es que el valor de N es incorrecto.
Dime si te funciono,
suerte.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas