71886895 Programas en Turbo c Vectores y Matrices

24
Facultad de Ciencias Humanas y de la Educación Carrera de Docencia en Informática Fernando Gabriel Flores Ramos Universidad Técnica de Ambato

description

manual para aprender a programar materices en c++

Transcript of 71886895 Programas en Turbo c Vectores y Matrices

Page 1: 71886895 Programas en Turbo c Vectores y Matrices

Facultad de Ciencias Humanas y de la

Educación

Carrera de Docencia en Informática

Fernando Gabriel Flores Ramos

Universidad Técnica de

Ambato

Page 2: 71886895 Programas en Turbo c Vectores y Matrices

Primer

Parcial

Page 3: 71886895 Programas en Turbo c Vectores y Matrices

VECTORES

Un vector, también llamado array(arreglo) unidimensional, es una estructura de datos que permite agrupar elementos del mismo tipo y almacenarlos en un solo bloque de memoria juntos, uno despues de otro. A este grupo de elementos se les identifica por un mismo nombre y la posición en la que se encuentran. La primera posición del array es la posición 0.

Podríamos agrupar en un array una serie de elementos de tipo enteros, flotantes, caracteres, objetos, etc. Crear un vector en c++ es sencillo, seguimos la siguiente sintaxix: Tipo nombre[carlos];

Posiciones del Vector

1

2

3

4

5

6

Es un vector de 6 posiciones, pues el lazo va a ir así: for(j=1; j<= 6;j++).

En el caso que se requiera más posiciones previamente se ingresa un limite N y en lugar del número 6 iría la variable del limite osea N.

MATRICES

Una matriz es un array multidimensional. Se definen igual que los vectores excepto que se requiere un índice por cada dimensión. Su sintaxis es la siguiente: tipo nombre [tamaño 1][tamaño 2]...; Una matriz bidimensional se podría representar gráficamente como una tabla con filas y columnas. La matriz tridimensional se utiliza, por ejemplo, para trabajos gráficos con objetos 3D. En el ejemplo puedes ver como se rellena y visualiza una matriz bidimensional. Se

necesitan dos bucles para cada una de las operaciones. Un bucle controla las filas y otro las columnas. Posiciones de la Matriz

1,1 2,1 3,1 4,1 5,1 1,2 2,2 3,2 4,2 5,2

1,3 2,3 3,3 4,3 5,3

1,4 2,4 3,4 4,4 5,4

1,5 2,5 3,5 4,5 5,5

Page 4: 71886895 Programas en Turbo c Vectores y Matrices

1. Diseñe un programa que me permita ingresar n elementos en una matriz cuadrática.

Necesitamos dos lazos for para el ingreso de la matriz cada for para el índice que se necesita, el un

lazo for para las filas y el otro lazo for para las columnas, para la visualización también necesitamos

dos lazos for, es necesario pues para la visualización necesitamos los dos mismos índices del ingreso

de datos en la matriz si deseamos se puede hacer la visualización dentro de los mismos for del

ingreso o a su vez cerrar los del ingreso y volver abrir los lazos for que empiecen y terminen en el

mismo número de los promeros lazos de repetición.

#include<conio.h>

#include<stdio.h>

void main()

{

int n,l,i,f,c,op,m[11][11],j,g,v[5],k,x,lv;

do{

textcolor(7);

clrscr(); /*Creando para limpiar pantalla.*/

textcolor(3); /*Para colocar color a lo que deseemos*/

for(j=1; j<=80;j++) /*lazo for que va de 1 a 80 posiciones (columnas)*/

/*gotoxy para posicionamiento en pantalla de un carácter especial*/

/*lazo for que va de 1 a 24 posiciones (filas)*/

{

gotoxy(j,2);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

gotoxy(j,25);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

for(j=1; j<=24;j++) /*lazo for que va de 1 a 24 posiciones (filas)*/

{

gotoxy(1,j);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

gotoxy(80,j);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

textcolor(4);

gotoxy(35,2);cprintf("USO DE MATRICES"); "); /*SALIDA: mensaje un pantalla*/

c=5; /*variable para uso de índice en columnas de la matriz*/

f=5; /*variable para uso de índice en filas de la matriz*/

gotoxy(5,3);printf("Ingrese L¡mite :");scanf("%d",&l); /*ENTRADA: recibir dato desde teclado*/

Page 5: 71886895 Programas en Turbo c Vectores y Matrices

for(i=1;i<=l;i++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

for(j=1;j<=l;j++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

gotoxy(c,f);scanf("%d",&m[i][j]); /*ENTRADA: recibir dato desde teclado para la matriz*/

c=c+2; /*con esto cada vez que ingresamos un elemento, saltará 2 espacios en las columnas

para el ingreso del siguiente elemento*/

}

c=5; /*se iguala las columnas al lugar de donde empezaron*/

f=f+2; /*es el incremento de las filas cuando ya se ingreso lo requerido de las filas*/

}

c=25; /*variable para uso de índice en columnas de la matriz*/

for(i=1;i<=l;i++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

for(j=1;j<=l;j++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

gotoxy(c,f);printf("%d",m[i][j]); /*SALIDA: resultado en pantalla*/ c=c+2; /*incremento de las columnas cada vez que se visualiza un elemento*/

}

c=25; /*variable para uso de índice en columnas de la matriz*/

f=f+2; /*incremento de las filas en 2 */

}

gotoxy(10,24);printf("Para continuar 1 para cerrar 0:");scanf("%d",&op); /* Mientras la condición se

mantenga verdadera, el bloque de instrucciones dentro de las llaves se ejecutará*/

}

while(op==1); /*es un lazo repetitivo que se detendrá cuando pase lo contrario 1*/

getch(); /*es la pausa que se necesita para que el programa pueda ser visto*/

}

Page 6: 71886895 Programas en Turbo c Vectores y Matrices
Page 7: 71886895 Programas en Turbo c Vectores y Matrices

2.-Ingrese por teclado una matriz cuadrática, y visualice los elementos dentro de un vector

Debemos ingresar dos valores por teclado, es decir ingresamos la matriz manualmente. Usando dos lazos repetitivos for que nos ayudan a manejar los índices de la matriz. Para que el vector vaya hasta el numero de posiciones que necesitamos debemos usar un acumulador que cuante cuantas veces se ingresa un dato entonces con esto el vector va a ser con el índice de aquel contador. #include<conio.h>

#include<stdio.h>

void main()

{

int n,l,i,f,c,op,m[11][11],j,g,v[5],k,x,lv;

do{

textcolor(7);

clrscr(); /*Creando para limpiar pantalla.*/

textcolor(3); /*Para colocar color a lo que deseemos*/

for(j=1; j<=80;j++) /*lazo for que va de 1 a 80 posiciones (columnas)*/

{

gotoxy(j,2);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

gotoxy(j,25);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

for(j=1; j<=24;j++) /*lazo for que va de 1 a 24 posiciones (filas)*/

{

gotoxy(1,j);cprintf("Û");

gotoxy(80,j);cprintf("Û");

}

textcolor(4);

gotoxy(35,2);cprintf("USO DE MATRICES Y VECTORES"); /*SALIDA: mensaje un pantalla*/

c=5; /*variable para uso de índice en columnas de la matriz*/

f=5; /*variable para uso de índice en filas de la matriz*/

gotoxy(5,3);printf("Ingrese L¡mite :");scanf("%d",&l); /*ENTRADA: recibir dato desde teclado*/

k=0;

for(i=1;i<=l;i++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

for(j=1;j<=l;j++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

Page 8: 71886895 Programas en Turbo c Vectores y Matrices

gotoxy(c,f);scanf("%d",&m[i][j]); /*es la manera para ingresar una matriz con 2 indices, las

variables de los lazos for posteriormente agregados*/

k=k+1; /*Nos da la pauta para saber cuantas veces se ingresa un elemento de la matriz*/

c=c+2; /*con esto cada vez que ingresamos un elemento, saltará 2 espacios en las columnas para el

ingreso del siguiente elemento*/

}

c=5; /*se iguala las columnas al lugar de donde empezaron*/

f=f+2; /*es el incremento de las filas cuando ya se ingreso lo requerido de las filas*/

}

f=6; /*variable para uso de índice en filas de la matriz*/

for(i=1;i<=l;i++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

for(j=1;j<=l;j++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

v[k]=m[i][j]; /*pasamos lo que hay en la matriz a un vector */

gotoxy(20,f);printf("%d",v[k]); /*la visualización del vector resultante*/

f=f+1; /*es el incremento de las filas del vector*/

}

}

gotoxy(10,24);printf("Para continuar 1 para cerrar 0:");scanf("%d",&op); /* Mientras la condición se

mantenga verdadera, el bloque de instrucciones dentro de las llaves se ejecutará*/

}

while(op==1); /*es un lazo repetitivo que se detendrá cuando pase lo contrario 1*/

getch(); /*es la pausa que se necesita para que el programa pueda ser visto*/

}

Page 9: 71886895 Programas en Turbo c Vectores y Matrices
Page 10: 71886895 Programas en Turbo c Vectores y Matrices

3.-Diseñe un programa que me permita generar n múltiplos de cualquier factor

ingresado desde teclado que se encuentre dicho factor entre 2 y 9 la matriz es de

orden cuadrática se visualiza la entrada y la salida de datos.

Necesitamos dos lazos for para el ingreso de la matriz cada for para el índice que se necesita, el un

lazo for para las filas y el otro lazo for para las columnas, para la visualización también necesitamos

dos lazos for, es necesario pues para la visualización necesitamos los dos mismos índices del ingreso

de datos en la matriz si deseamos se puede hacer la visualización dentro de los mismos for del

ingreso o a su vez cerrar los del ingreso y volver abrir los lazos for que empiecen y terminen en el

mismo número de los promeros lazos de repetición.

#include<stdio.h>

#include<conio.h>

#include<math.h>

void main()

{

int m[10][10],i,j,f,c,n,op,p,l,g;

do{ /*es en donde va a iniciar el while que usaremos luego para que se repita el programa*/

clrscr(); /*Creando para limpiar pantalla.*/

flushall(); /*sirve para vaciar la memoria del programa*/

c=15; /*define la columna en donde inicia toda la matriz*/

f=15; /*define la fila en donde inicia toda la matriz*/

gotoxy(5,5);printf("Ingrese el l¡mite: ");scanf("%d",&n);

do{ /*es el do del while que delimita los ingresos por teclado*/

gotoxy(24,7);printf(" "); /*es el blanqueo del ingreso por teclado que no coincide con el while*/

gotoxy(5,7);printf("Ingrese el factor: ");scanf("%d",&l); /*ENTRADA: recibir dato desde teclado*/

}

while(l<=1 || l>=10); /*Mientras la condición se mantenga verdadera, el bloque de instrucciones dentro de

las llaves se ejecutará*/

p=1;

g=1;

for(i=1;i<n+1;i++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

for(j=1;j<n+1;j++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

Page 11: 71886895 Programas en Turbo c Vectores y Matrices

p=g*l; /*es el proceso que se realiza para colocar los múltiplos de un factor en la matriz */

m[i][j]=p; /*igulamos los múltiplos generados para colocarlos dentro de la matriz*/

gotoxy(c,f);printf("%d",m[i][j]); /*SALIDA: datos visualizados en pantalla*/

c=c+3; /*control de columnas el incremento que hará que se vea mejor la

matriz/

g=g+1;

}

c=15;

f=f+3;

}

gotoxy(10,24);printf("Para continuar 1 para cerrar 0:");scanf("%d",&op);

}

while(op==1); /* Mientras la condición se mantenga verdadera, el bloque de instrucciones dentro de las llaves

se ejecutará*/

getch();

}

Page 12: 71886895 Programas en Turbo c Vectores y Matrices

4.-Diseñe un programa que me permita ingresar n números enteros en una matriz

cuadrática, recorra sus posiciones y obtenga sus datos de su diagonal principal.

Necesitamos dos for para generacion de la matriz, tambien necesitamos 2 ingresos el limite de la

matriz que iría dentro de los dos for y el otro ingreso de el factor que va a ser el múltiplo con el que se

llemará la matriz, para la visualización, también necesitamos dos for de las mismas características de

los for para generar la matriz cuadratica.

#include<stdio.h>

#include<conio.h>

#include<math.h>

void main()

{

int m[10][10],i,j,f,c,n,op,p,l,g,x,g1,g2;

do{

clrscr(); /*Creando para limpiar pantalla.*/

flushall(); /*sirve para vaciar la memoria del programa*/

for(j=1; j<=80;j++) /*lazo for que va de 1 a 80 posiciones (columnas)*/

{

gotoxy(j,2);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

gotoxy(j,25);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

for(j=1; j<=24;j++) /*lazo for que va de 1 a 24 posiciones (filas)*/

{

gotoxy(1,j);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

gotoxy(80,j);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

c=5; /*variable para uso de índice en columnas de la matriz*/

f=7; /*variable para uso de índice en filas de la matriz*/

gotoxy(5,3);printf("Ingrese L¡mite :");scanf("%d",&l); /*ENTRADA: recibir dato desde teclado*/

gotoxy(5,6);printf("Ingreso"); "); /*SALIDA: mensaje un pantalla*/

for(i=1;i<l+1;i++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

for(j=1;j<l+1;j++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

Page 13: 71886895 Programas en Turbo c Vectores y Matrices

do{

gotoxy(c,f);scanf("%d",&m[i][j]); /*lazo for que va de 1 a limite ingresado para uso del índice de

matriz*/posteriormente agregados*/

}

while(m[i][j]<8 || m[i][j]>=58); /*es la definicion o limitacion del ingreso de datos a una matriz*/

c=c+3; /*incremento de las columnas de la matriz*/

}

c=5; /*se define en que columna se va a empezar*/

f=f+3; /*incremento de las filas de 3 en tres*/

}

c=35;

f=15;

gotoxy(33,13);printf("Diagonal Principal"); /*SALIDA: mensaje un pantalla*/

textcolor(3);

for(i=1;i<l+1;i++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

for(j=1;j<l+1;j++) /*lazo for que va de 1 a limite ingresado para uso del índice de matriz*/

{

if(i==j)

{

gotoxy(c,f);cprintf("%d",m[i][j]); /*la visualización de la matriz resultante*/

c=c+3;

f=f+3;

}

}

}

gotoxy(10,24);printf("Para continuar 1 para cerrar 0:");scanf("%d",&op); /* mensaje que aparecerá

cuando el programa termine*/

}

while(op==1); /* Mientras la condición se mantenga verdadera, el bloque de instrucciones dentro de

las llaves se ejecutará*/

getch();

}

Page 14: 71886895 Programas en Turbo c Vectores y Matrices
Page 15: 71886895 Programas en Turbo c Vectores y Matrices

5.-Diseñe un programa que me permita generar múltiplos de cualquier factor

ingresado desde teclado, solo en las diagonales principal y secundaria, las demás

posiciones se llenan con valores ceros.

Siempre para trabajar con matrices necesitamos dos lazos de repetecion for para que vayan

manejando el índice de cada posición osea índice de columnas y filas, necesitamos el ingreso de limite

de la matriz, y el ingreso del factor con el que vamos a trabajar con el que se colocara los múltiplos de

él en la diagonal principal y diagonal secundaria, pero para esto también necesitamos colocar en todas

la posiciones de la matriz el numero cero, para que posteriormente en las diagonales se coloquen los

múltiplos de el factor ingresado desde teclado.

#include<stdio.h>

#include<conio.h>

#include<math.h>

void main()

{

int m[10][10],i,j,f,c,n,op,p,l,g,x,g1,g2,fac,s,md,q,me,h;

flushall();

do{

clrscr(); /*Creando para limpiar pantalla.*/

textcolor(7); /*función para poner color a caracteres números o letras*/

for(j=1; j<=80;j++) /*lazo for que va de 1 a 80 posiciones (columnas)*/

{

gotoxy(j,2);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

gotoxy(j,25);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

for(j=1; j<=24;j++) /*lazo for que va de 1 a 24 posiciones (filas)*/

{

gotoxy(1,j);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

gotoxy(80,j);cprintf("Û"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

c=30;

f=15;

Page 16: 71886895 Programas en Turbo c Vectores y Matrices

textcolor(7);

gotoxy(5,6);printf("Ingrese L¡mite :");scanf("%d",&l); /*ingreso de limite para la matriz*/

gotoxy(5,7);printf("Ingrese un Factor :");scanf("%d",&fac); /*ingreso del factor que va en las diagonales*/

for(i=1;i<l+1;i++) /*lazo for que va posicionandoce en el índice de la matriz*/

{

for(j=1;j<l+1;j++) /*lazo for que va posicionandoce en el índice de la matriz*/

{

gotoxy(c,f);printf("0"); /*proceso para colocar toda la matriz de ceros*/

c=c+3; /*control de columnas de la matriz*/

}

c=30; /*definición de columna donde empieza la matriz*/

f=f+3; /*incremento de filas en la matriz*/

}

c=30; /*definición de columna donde empieza la matriz*/

f=15; /*definición de filas donde empieza la matriz*/

s=1;

for(i=1;i<l+1;i++) /*for para ubicar índice de la matriz*/

{

for(j=1;j<l+1;j++) /*for para ubicar índice de la matriz*/

{

textcolor(9); /*da color a elementos que se requiera poner color*/

if(i==j) /*pregunta para ubicar los elementos de la disgonal principal*/

{

md=s*fac; /*proceso para sacar múltiplos del factor ingresado*/

m[i][j]=md; /*colocacion de los multiplos de un factor en la diagonal principal de la matriz*/

gotoxy(c,f);cprintf("%d",m[i][j]); /*visualizacion de la diagonal principal*/

s=s+1;

c=c+3;

f=f+3;

}

}

}

g1=c-3; /*definición de columnas*/

g2=15; /*definición de filas*/

x=l;

Page 17: 71886895 Programas en Turbo c Vectores y Matrices

q=md;

for(i=1;i<l+1;i++) /*lazo que para ubicar la diagonal secundaria*/

{

md=md+fac;

m[i][x]=md;

textcolor(1);

gotoxy(g1,g2);cprintf("%d",m[i][x]); /*visualizacion de la matriz resultante*/

x=x-1;

g2=g2+3;

g1=g1-3;

}

gotoxy(20,47);printf("Para ir al men£ principal 1 o 0 para salir: ");scanf("%d",&op);

}

while(op==1);

getch();

}

Page 18: 71886895 Programas en Turbo c Vectores y Matrices

6.-Diseñe un programita que me permita ingresar N elementos enterosen una matriz cuadr tica,

los mismos q deben estar en un rangodesde 5 hasta 45, recorra la matriz y encuentre todos los

elementos impares de la matriz y guardelos en un vector, el mismo que se debe presentar en

forma ordenada.

Siempre para trabajar con matrices necesitamos dos lazos de repetecion for para que vayan

manejando el índice de cada posición osea índice de columnas y filas, necesitamos el ingreso de los

elementos que serán ingresados desde teclado a la matriz, luego vamos a preguntar con un if si cada

uno de los elementos de la matriz es impar entonces lo vamos colocando en un vector nuevo, luego

mediante una pregunta e hacemos un juego de igualación de vectores y un auxiliar para ordenar los

números impares en otro vector.

#include<stdio.h>

#include<conio.h>

void main()

{

int c,d,f,n,l,matriz[10][10],aux,vec1[50],b,i,j,au,v[20],op;

do{

clrscr(); /*Creando para limpiar pantalla.*/

flushall();

gotoxy(4,3);printf("Ingrese el l¡mite: ");scanf("%d",&l); /*ingreso del limite de la matriz*/

gotoxy(4,5);printf("Ingrese los n£meros: "); /*mensaje de pantalla*/

for(j=1; j<=80;j++) /*for empieza en 1 hasta 80 posiciones*/

{

gotoxy(j,2);cprintf("Û"); /*caracter que se coloca en un lugar determinado de la pantalla*/

gotoxy(j,25);cprintf("Û"); /*caracter que se coloca en un lugar determinado de la pantalla*/

}

for(j=1; j<=24;j++) /*for empieza en 1 hasta 24 posiciones*/

{

gotoxy(1,j);cprintf("Û"); /*caracter que se coloca en un lugar determinado de la pantalla*/

gotoxy(80,j);cprintf("Û"); /*caracter que se coloca en un lugar determinado de la pantalla*/

}

for(c=1;c<=l;c++)

Page 19: 71886895 Programas en Turbo c Vectores y Matrices

{

for(f=1;f<=l;f++) /*for para el manejo del índice de la matriz*/

{

do

{

gotoxy(f*3+4,c*2+5);scanf("%d",&matriz[f][c]); /*ingreso de los elemento de la matriz*/

}

while(matriz[f][c]<5||matriz[f][c]>=46); /* Mientras la condición se mantenga verdadera, el bloque de

instrucciones dentro de las llaves se ejecutará*/

}

}

aux=1; /*auxiliar para ordenar el vector de menos a mayor*/

b=8;

for(c=1;c<=l;c++) /*for para posiciones del vector*/

{

for(f=1;f<=l;f++)

{

if(matriz[f][c]%2==1) /*pregunta para saber si el número es impar*/

{

vec1[aux]=matriz[f][c]; /*pongo el número impar en el vector si se cumple la función*/

gotoxy(28,b);printf("%d",vec1[aux]); /*imprimo en pantalla lo deseado en el vector*/

aux=aux+1;

b=b+1;

}

}

}

gotoxy(10,24);printf("Para continuar 1 para cerrar 0:");scanf("%d",&op);

}

while(op==1); /* Mientras la condición se mantenga verdadera, el bloque de instrucciones dentro de las llaves

se ejecutará*/

getch();

}

Page 20: 71886895 Programas en Turbo c Vectores y Matrices
Page 21: 71886895 Programas en Turbo c Vectores y Matrices

7.-Diseñe un programa que me permita realizar el producto algebraico de dos matrices

ingresadas.

Siempre para trabajar con matrices necesitamos dos lazos de repetecion for para que vayan

manejando el índice de cada posición osea índice de columnas y filas, necesitamos el ingreso de los

elementos que serán ingresados desde teclado a las matrices, luego vamos a realizar procesos

matemáticos los cuales son obligatorios para la resolución de un producto de matrices algebraicas,

para estoes sumamente importante las posiciones de la matrizporque con cada una de ellas iremos

jugando para realizar el producto algebraico de matrices.

#include<conio.h>

#include<stdio.h>

void main()

{

int ma[10][10],mb[10][10],i,j,c,f,l,mr[10][10],x,h;

do{

clrscr(); /*Creando para limpiar pantalla.*/

for(j=1; j<=80;j++) /*lazo for que va de 1 a 80 posiciones (columnas)*/

{

gotoxy(j,3);cprintf("*"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

gotoxy(j,25);cprintf("*"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

for(j=1; j<=25;j++) /*lazo for que va de 1 a 25 posiciones (filas)*/

{

gotoxy(1,j);cprintf("*"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

gotoxy(80,j);cprintf("*"); /*gotoxy para posicionamiento en pantalla de un carácter especial*/

}

}

Page 22: 71886895 Programas en Turbo c Vectores y Matrices

gotoxy (30,2); cprintf("PRODUCTO DE MATRICES");/*SALIDA: mensaje que se verá en pantalla*/

gotoxy (10,4); cprintf("INGRESE UN LIMITE "); scanf("%d",&l); /*ingreso de un limite de la matriz*/

f=7; /*definición de la fila donde empezará*/

c=10; /*definición de la columna donde empezará*/

for (i=1;i<=l;i++) /*for para manejar las posiciones de la matriz*/

{

for (j=1;j<=l;j++) /*segundo for para manejar las posiciones de la matriz*/

{

gotoxy(c,f);scanf("%d",&ma[i][j]); /*ingreso de la primera matriz desd teclado*/

c=c+3;

}

f=f+2;+

c=10;

}

f=7;

c=25;

for (i=1;i<=l;i++) /*un nuevo lazo for para manejar posiciones de otra matriz*/

{

for (j=1;j<=l;j++)

{

gotoxy(c,f);scanf("%d",&mb[i][j]); /*ingreso de la segunda matris*/

mr[i][j]=0; /*igualmos la matriz resultante a ceso*/

c=c+3;

}

f=f+2;+

Page 23: 71886895 Programas en Turbo c Vectores y Matrices

c=25;

}

for (i=0;i<=l;i++) /s for para posicionamiento de la matriz*/

{

for (x=0;x<=l;x++) /*for auxiliar que hará que se multipliquen las 2 matrices ingresadas*/

{

for (j=0;j<=l;j++)

{

mr[i][x]=mr[i][j]+ma[i][j]*mb[j][x]; /*proceso necesario para el product de matrices*/

}

}

}

f=7;

c=45;

for (i=1;i<=l;i++)

{

for (j=1;j<=l;j++)

{

gotoxy(c,f);printf("%d",mr[i][j]); /*visualizacion de la matriz resultante con 2 lazos for*/

c=c+5;

}

f=f+2;

c=45;

}

Page 24: 71886895 Programas en Turbo c Vectores y Matrices

gotoxy(15,24);printf("Para continuar 1 o 0 para terminar ");scanf("%d",&h); /* Mientras la

condición se mantenga verdadera, el bloque de instrucciones dentro de las llaves se ejecutará*/

}

while(h==1);

getch();

}