Matriz con diagonal invertida

Javier Navarro

/*Se introduce una matriz e imprime por pantalla esa matriz y otra con la diagonal invertida*/

#include <stdio.h>
#include <stdlib.h>

void llenar (int M[20][20], int d)
{
for (int i = 1 ; i <= d ; i++)
{
for (int j = 1 ; j <= d ; j++)
{
printf ("Dame la posicion[%d][%d]: ",i, j);
scanf("%d",&M [i] [j]);
}
}
}

void mostrar (int M[20][20], int d)
{
for (int i = 1 ; i <= d ; i++)
{
printf("\n");
for (int j = 1 ; j <= d ; j++)
{
printf ("[%d]",M [i] [j]);
}
}
}

void invierte (int M[20][20], int d)
{
int fin = d;
for (int i = 1 ; i <= d / 2 ; i++)
{
int aux = M [i] [i];
M [i] [i] = M [d] [d];
M [d] [d] = aux;
fin--;
}
}

int main()
{
int M [20] [20];
int d;
printf ("Dame la dimension de la matriz: ");
scanf("%d",&d);
llenar (M, d);
printf ("\nMATRIZ ORIGINAL: ");
mostrar (M, d);
printf ("\n\nMATRIZ CON LA DIAGONAL PRINCIPAL INVERTIDA: ");
invierte (M, d);
mostrar (M, d);
getch();
return 0;
}
Esta entrada fue publicada en Informática e Internet. Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s