lunes, 30 de marzo de 2020

ACTIVIDADES 30 DE MARZO - 3 DE ABRIL 2020

GENERAR MATRICES 

Se recuerda en comentarios colocar su nombre para verificar su asistencia como revisión de contenidos es muy importante para registras su avance, en la semana pasada solo 12 personas registraron la asistencia de un total de 74, favor comunicar a sus compañeros que registren hasta el dia de hoy la asistencia de la semana pasada.

A partir de matrices cuadradas como en el ejercicio solucionado de la semana pasada :

revisar la programación exhaustivamente para que pueda entender y resolver las matrices como actividades propuestas:

GENERAR MATRICES: ejercicio RESUELTO en la entrada anterior del blog:
ACTIVIDAD RESUELTA DAR CLIC AQUI

se puede generar matrices de n * n, (mismo numero de filas por columnas) y realizar llenados como el siguiente de una diagonal principal:

1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1


para poder rellenar matrices es importante entender el movimiento de las posiciones que se desea cambiar a valor de 1, por ejemplo para el ejercicio anterior las posiciones son:
fila  columna
0        0   =  1
1        1   =  1
2        2   =  1
3        3   =  1
n        n   =  1  siendo n el valor final de la matriz

al saber cual es movimiento para el ejercicio anterior notamos que son posiciones similiares y nos servira solo un lazo o bucle FOR para generar las posiciones (00, 11, 22, 33, nn) y rellenarlas con lo que se solicita.

Los ejercicios propuestos para esta semana sobre matrices son:

1:  Relllenar de ceros la matriz completa y luego los extremos rellenar con 1

1
1
1
1
1
1
0
0
0
1
1
0
0
0
1
1
0
0
0
1
1
1
1
1
1

explicaremos tambien este ejercicio como se mueve las posiciones para ser rellenadas de 1

fila superior:
0   0 = 1
0   1=  1
0   2=  1
0   3=  1
0   n=  1   siendo n el valor final hasta donde llegara la matriz


2: Rellenar la matriz, esta debe ser de tamaño impar (ejemplo 5 *5), con ceros, y luego en la mitad de dicha matriz, tanto en filas y columnas rellenar de 1 formando una cruz.

0
0
1
0
0
0
0
1
0
0
1
1
1
1
1
0
0
1
0
0
0
0
1
0
0


3:  Rellenar de 0 (ceros) toda la matriz y luego la diagonal principal y la diagonal secundaria de 1

1
0
0
0
1
0
1
0
1
0
0
0
1
0
0
0
1
0
1
0
1
0
0
0
1


4. en una matriz cuadrada impar (ejemplo 5 * 5) crear las iniciales de su nombre y apellido
   para el ejemplo tenemos el nombre JUAN PEREZ, las iniciales seria J y P.

1
1
1
1
1
0
0
1
0
0
0
0
1
0
0
1
0
1
0
0
1
1
1
0
0


0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0


LOS EJERCICIOS PROPUESTOS serán enviados hasta el 3 de abril de 2020 al correo del profesor
dafpablo@hotmail.com





viernes, 20 de marzo de 2020

ACTIVIDADES 23 - 27 DE MARZO


1: Realizar el llenado de matriz e impresión de la misma, luego identificar la suma  total de la matriz,


5
2
4
1
6
4

La suma total es: 22

************************************************


2: Llenar un matriz de n * m y verificar cuantos números pares existen en dicha matriz


1
3
8
5
10
9

Numero de números pares en matriz=2


GENERAR MATRICES:
se puede generar matrices de n * n, (mismo numero de filas por columnas) y realizar llenados como el siguiente de una diagonal principal:

1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1


Este proceso no necesita ingresar por teclado datos si no directamente GENERAR el llenado de valores en la matriz.

los pasos para llenar esta matriz es:

  1:  primero encerar la matriz (llenarla de 0).
  2:   luego verificar que datos son los que se desea llenar para este caso la diagonal principal de datos
  3:  y por ultimo imprimir la matriz para verificar su llenado.

3:  Analizar detenidamente el código diseñado, copiar el programa y ejecutarlo, se generara la diagonal principal, entenderlo lo mejor posible porque se realizara en esta semana varios ejercicios de este tipo

#include <conio.h>
#include <stdio.h>
int A[5][5];

int i,j,n;
char x;
main()
{
  printf("PROGRAMA GENERAR DIAGONAL PRINCIPAL EN MATRIZ\n");
  n=5;  // numero de filas y columnas del mismo tamaño
  // llenar de ceros a la matriz completa
  for(i=0;i<n;i++)
  {
    for(j=0;j<n;j++)
    { 
      A[i][j]=0;
    }
  }
  // imprimir matriz solo con ceros
  printf("\n\n IMPRIMIR MATRIZ con CEROS\n");
  for(i=0;i<n;i++)
  {
    for(j=0;j<n;j++)
    { 
      printf("%d \t ",A[i][j]);
   
    }
     printf("\n ");  // para bajar a siguiente fila
  }
  // PROCESAR LA DIAGONAL PRINCIPAL CON UNOS, SE TOMA LAS 
// POSICIONES  0,0   1,1    2,2,   3,3  4,4  QUE GENERA FOR Y SE LLENA DE 1
  for(i=0;i<n;i++)
  {
        A[i][i]=1;
  }

  printf("\n\n IMPRIMIR MATRIZ con DIAGONAL PRINCIPAL\n");
  for(i=0;i<n;i++)
  {
    for(j=0;j<n;j++)
    { 
      printf("%d \t ",A[i][j]);
   
    }
     printf("\n ");  // para bajar a siguiente fila
  }
  scanf("%d",&x);
}







MATRICES EN C



MATRICES EN C++

Las matrices se diferencian de los vectores por tener dos direcciones y los vectores en una sola

                                           A                                                     V
    

columna
columna
columna




0
1
2
Filas
0

0



Filas
1

1



filas
2

2

7


3

3




4

4




5


                               Matriz                                                        Vector   
                                       
  Al manipular las matrices debemos tomar en cuenta que el orden es primero las filas y luego las columnas por ejemplo para almacenar el valor 7 en la matriz como se muestra en el grafico debemos acceder de la siguiente manera

A[2][1]= 7
     |  | Columna
 Fila


vídeo de manejo de matrices en C



DECLARACION DE MATRICES:
Para declarar una matriz debemos hacerlo de la siguiente manera:


Int A[5][3]
   |   |   |    columnas
   |   |    Filas
   |    Nombre
Tipo

Debemos tomar en cuenta que la primera posición tanto de filas como de columnas empieza con 0.

LLENADO DE MATRICES

Para almacenar el contenido completo de una matriz se necesita de dos lazos de repetición uno que vaya al total de las filas y otro al total de las columnas, para el siguiente ejemplo necesitamos un for que va al total de filas n=5 y otro al total de las columnas es decir m=3




programa para llenar una matriz e imprimirla:


#include <conio.h>
#include <stdio.h>
int A[5][3];

int i,j,n,m;
char x;
main()
{
  printf("PROGRAMA LLENADO DE MATRIZ\n");
  n=5;  // numero de filas
  m=3;  // numero de columnas
  
  // el llenado se hace fila por fila 
  for(i=0;i<n;i++)
  {
    for(j=0;j<m;j++)
    {    
      printf("Ingrese valor ");
      scanf("%d",&A[i][j]);
    }
  }
  // verificar el resultado de los datos ingresados 
  printf("\n\n IMPRIMIR MATRIZ\n");
  for(i=0;i<n;i++)
  {
    for(j=0;j<m;j++)
    {    
      printf("%d \t ",A[i][j]);
      
    }
     printf("\n ");  // para bajar a siguiente fila
  }
  
  
  scanf("%d",&x);
}