Arreglos III - PowerPoint PPT Presentation

1 / 11
About This Presentation
Title:

Arreglos III

Description:

Hemos visto como operar con arreglos unidimensionales (vectores) ... Primero debe preguntar el n mero de alumnos de la secci n, luego las notas de cada uno ... – PowerPoint PPT presentation

Number of Views:71
Avg rating:3.0/5.0
Slides: 12
Provided by: FelipeC2
Category:

less

Transcript and Presenter's Notes

Title: Arreglos III


1
Arreglos (III)
  • Clase 14
  • Introducción a la Programación

2
Resumen de la clase anterior
  • Hemos visto como operar con arreglos
    unidimensionales (vectores).
  • Hemos llevado a cabo varios ejemplos
  • Dar vuelta el orden de un arreglo
  • Evaluar un polinomio
  • Cálculo de mínimo, máximo, promedio
  • Representación de conjuntos

3
Arreglos multidimensionales (matrices)
  • Declaraciónlttipogt ltidentificadorgtltNumElem1gtltN
    umElem2gt
  • Declaración e inicialización
  • lttipogt identifMN
  • valor1-1, valor1-2, ..., valor1-N ,
  • valor2-1, valor2-2, ..., valor2-N ,
    ...,
  • valorM-1, valorM-2, ..., valorM-N
  • Asignaciónmatrizindice1indice2 valor
  • Ejemplo miMatrix56100

4
Ejemplos de uso
  • Declaración de una matriz de 50 filas y 20
    columnas de enteros
  • int matriz5020
  • Declaración e inicialización de una matriz
  • int matriz23 2, 5, 8 ,
  • 9, 1, 2
  • Asignando un valor a la primera posición de la
    segunda fila de una matriz de enteros
  • matriz10 50
  • Imprimiendo una matriz de 100x50 enteros mediante
    un ciclo for
  • int i, j
  • for (i0 ilt100 i)
  • for (j0 jlt50 j)
  • printf("d\n", matrizij)

5
Otro ejemplo cálculo de notas de un curso
  • NF 0.7NP 0.3Ex
  • NP (I1I2T1T2)/4
  • Primero debe preguntar el número de alumnos de la
    sección, luego las notas de cada uno
  • Qué matriz usar?

6
define MAX_NUM_ALUMNOS 100 define MAX_NOTA
7.0 define MIN_NOTA 1.0 int main()
int NumAlumnos,i,j float notasMAX_NUM_ALUMNO
S6, np, suma 0, min MAX_NOTA,
max MIN_NOTA, prom printf("Ingrese el
numero de alumnos en la seccion ")
scanf("d", NumAlumnos) printf("Ingrese
las notas de los d alumnos I1 I2 T1 T2
Ex\n,NumAlumnos) for (i0 iltNumAlumnos
i) printf("\tAlumno d ", i1)
for (j0 jlt5 j) scanf("f", notasij)
np (notasi0notasi1notasi2
notasi3) / 4 notasi5
(float)(0.7np 0.3notasi4)
printf("\nNotas Finales\n") for (i0
iltNumAlumnos i) suma
notasi5 if (notasi5 lt min) min
notasi5 if (notasi5 gt max) max
notasi5 printf("\tAlumno d 3.1f\n",
i1, notasi5) prom
suma/NumAlumnos printf(\nPromedio 1.1f\n",
prom) printf("Minimo 1.1f\n", min)
printf("Maximo 1.1f\n", max)
7
Implementación de lamultiplicación de matrices
8
Ejemplo de ejecución
  • Multiplicacion de A(NxN) X B(NxN)
  • Ingrese el valor de N (de 1 a 10) 3
  • Ingrese los valores para la primera matriz
  • Fila 0 1 2 3
  • Fila 1 4 5 6
  • Fila 2 7 8 9
  • Ingrese los valores para la segunda matriz
  • Fila 0 9 8 7
  • Fila 1 6 5 4
  • Fila 2 3 2 1
  • Resultado AxB
  • 30 24 18
  • 84 69 54
  • 138 114 90

9
Invitar a salir a una niña
10
Invitar a salir a una niña Modelo de Control
11
Invitar a salir a una niña
/ Ciclo de busqueda Modelo de Control / /
Objetivo inicial Zona0, Ranking0,
CoincidenciasTodas / while (!exito)
/ El vector de la candidata es ninaszr /
if (compatibilidad(usuario, ninaszr) c)
exito TRUE else
/ Es necesario relajar el objetivo -gt Se
baja el ranking / r if (r
gt NUM_NINAS_X_ZONA) / Se acabaron
las cantidatas de la zona -gt Siguiente zona /
r 0 z if
(z gt NUM_ZONAS) / Se acabaron
las zonas se relaja la exigencia de
compatibilidad / z 0
c--
intentos
Write a Comment
User Comments (0)
About PowerShow.com