SlideShare a Scribd company logo
TECNOLÓGICO NACIONAL DE MÉXICO
Instituto Tecnológico Superior de Guasave
Ingeniería en Sistemas Computacionales
Fundamentos de Programación
Unidad IV: Arreglos (Vectores)
Mtro. José Antonio Sandoval Acosta
Retícula ISIC-2010-224: Programa: AED-1285
itsguasave.edu.mx
FUNDAMENTOS DE PROGRAMACION
Competencia:
• Conoce y aplica estructuras de datos en un lenguaje de programación
que permitan la organización de datos en la resolución de problemas
reales.
Arreglos
• En clase ya conocimos algunos tipos básicos como por ejemplo los tipos
char, int y float. El lenguaje C++ permite, además, construir estructuras
más complejas a partir de estos tipos básicos. Una de las construcciones
que podemos definir son los arreglos.
• Arreglo: Colección ordenada de elementos de un mismo tipo. Ordenada
significa que cada elemento tiene una ubicación determinada dentro del
arreglo y debemos conocerla para poder accederlo.
FUNDAMENTOS DE PROGRAMACIÓN
Sintaxis:
tipo nombre_variable[longitud];
Ejemplo:
int matricula[20];
• Con esto diremos que nombre_variable es un arreglo de longitud
elementos del tipo necesitado. Cabe destacar que longitud debe ser
cualquier expresión entera constante mayor que cero.
FUNDAMENTOS DE PROGRAMACIÓN
Representación
Gráfica de un
Arreglo
FUNDAMENTOS DE PROGRAMACIÓN
Asignación de un arreglo:
nombre_variable[índice] = valor o expresión del tipo requerido;
Ejemplos:
calificaciones[9]=(cal1+cal2+cal3)/3;
calificaciones[7]=95;
• El índice debe ser una expresión del tipo entero en el rango [0, longitud-1].
• Cabe destacar que C++ no revisa que el valor de la expresión sea menor a
longitud, simplemente asigna el valor a esa posición de memoria como si
formara parte del arreglo.
FUNDAMENTOS DE PROGRAMACIÓN
Acceso al contenido de un arreglo:
• nombre_variable[índice]; es valor del tipo requerido que puede ser
asignado a una variable, o pasado como parámetro, imprimirlo, etc.
• Aquí también vale la aclaración de que el índice debe estar dentro del
rango de definición del arreglo, C++ no revisará que esto sea cierto y
devolverá lo contenido en la posición de memoria correspondiente a un
arreglo de mayor longitud, el dato obtenido de esta manera es basura.
FUNDAMENTOS DE PROGRAMACIÓN
Ejercicio: Hacer un programa que capture un arreglo de 10
posiciones, una vez lleno pedir por teclado un número y
buscar si se encuentra dentro del arreglo indicando la
posición del mismo.
FUNDAMENTOS DE PROGRAMACIÓN
Ejercicio: Hacer un programa que capture la 10 números en
un arreglo de igual tamaño y determine la suma total de los
mismos y el promedio.
FUNDAMENTOS DE PROGRAMACIÓN
Ejercicio: Capturar 3 arreglos de 5 posiciones. Después multiplicar el primero
por el segundo y al resultado sumarle el tercero, guardar el resultado final en un
cuarto arreglo, el cual debe ser desplegado en pantalla.
FUNDAMENTOS DE PROGRAMACIÓN
Ejercicio: Hacer un programa que con arreglos
de 10 posiciones capture lo siguiente:
• Matricula de estudiante.
• Calificación en una materia con 3 parciales.
• Desplegar en pantalla el promedio por
alumno
• Desplegar en pantalla el promedio del
grupo.
FUNDAMENTOS DE PROGRAMACIÓN
Ejercicio:
• Hacer un programa que capture un arreglo de 10
posiciones, y a la vez llene un segundo arreglo con
el valor en la posición contraria, es decir, lo
capturado en la posición 0 se pasa a la posición 9
del segundo arreglo, etc.
FUNDAMENTOS DE PROGRAMACIÓN
Ejercicio:
• Hacer un programa que capture las infracciones de velocidad en la estación
de policía.
• Capturar en vectores de 10 posiciones los sig. Datos: Número de licencia,
velocidad registrada (k/h), velocidad limite (k/h), multa.
• Además indicar la suma total de las multas.
FUNDAMENTOS DE PROGRAMACIÓN
Matrices
• Una matriz es una estructura de datos, o más técnicamente, un espacio de
memoria que permite almacenar una colección de elementos, todos del
mismo tipo.
• La diferencia con los arreglos está en que, en las matrices, los elementos
no están organizados linealmente sino que su organización es
bidimensional, es decir, en filas y columnas.
• Conviene imaginar una matriz como una organización de celdas de
memoria, o casillas, en cada una de las cuales se puede guardar un
elemento de la colección.
FUNDAMENTOS DE PROGRAMACIÓN
Además, es usual dibujarla
como lo ilustra la figura
siguiente:
FUNDAMENTOS DE PROGRAMACIÓN
• Esta figura representa un matriz de cuatro filas (numeradas verticalmente
de 0 a 3) y seis columnas (numeradas horizontalmente de 0 a 5).
• En cada una de las 24 celdas o casillas se puede guardar un dato.
• La dimensión o tamaño de una matriz es el número filas por el número de
columnas.
• Debe ser claro entonces que la figura anterior es la gráfica de una matriz de
dimensión 4x6.
• La numeración de las filas y las columnas determina que cada una de las
casillas de una matriz tiene asociados dos números índice que la
identifican de manera única.
• A estos números se les llama índice de fila e índice de columna,
respectivamente.
• En el seudocódigo, y también en C y C++, las filas y las columnas se
numeran desde 0 y finalizan en n-1.
FUNDAMENTOS DE PROGRAMACIÓN
Declaración de una matriz en C++:
• La sintaxis es casi la misma excepto que hemos añadido un par de
corchetes "[ ]" más esta vez y al interior de éstos debemos poner el
número de filas y columnas máximas de la matriz, respectivamente.
Ejemplo:
int myMatriz1[10][5];
float myMatriz2[5][10];
string myMatriz3[15][15];
FUNDAMENTOS DE PROGRAMACIÓN
¿Cómo inicializar una matriz en C++?
• En cuanto tenemos declarado una matriz, es posible asignarle valores a
cada una de sus casillas, sus valores deben coincidir con el tipo de dato que
le asignamos a dicha matriz.
Ejemplo:
int myMatriz[2][2] = {{1,2}, {3,4}};
FUNDAMENTOS DE PROGRAMACIÓN
 El valor inicial corresponde a la fila cero, columna cero [0][0]
y tiene el valor de 1;
 En la fila cero, columna uno [0][1] tenemos el valor de 2;
 En la fila uno, columna cero [1][0] el valor de 3;
 Finalmente, en la fila uno, columna uno [1][1] el valor de 4.
Otra forma de hacerlo es con ciclos, dentro de los cuales se asigna un valor
inicial a cada casilla de la matriz, puede ser un cero en el caso de las matrices
numéricas o una cadena vacía para las tipo cadena.
Ejemplo:
int edades[3][2];
for (int i = 0; i < 3; i++) { // ciclo para filas
for (int j = 0; j < 2; j++) { // ciclo para columnas
edades[ i ][ j ]=0;
} // cierra ciclo de columnas
} // cierra ciclo de filas
FUNDAMENTOS DE PROGRAMACIÓN
Obtener el valor de una casilla específica
• Para acceder al valor de una casilla nuevamente haremos uso de los
corchetes, pero esta vez no para declarar tamaños (porque eso ya lo
hicimos) sino para indicar posiciones (fila y columna).
Ejemplo:
int myMatriz[2][2] = {{7,2},{1,4}}; //Matriz con 4 elementos
int num = myMatriz[0][0]; //Obtiene el valor de la casilla
cout << num << endl; //Despliega el valor obtenido que es 7
FUNDAMENTOS DE PROGRAMACIÓN
Recorrer una matriz en C++
• Para obtener todos los datos que se encuentran al interior de una matriz,
debemos acceder a cada posición, esto se hace fácilmente con dos ciclos
for (anidados).
• La lógica de este procedimiento es la siguiente:
 El primer ciclo for comenzará desde cero e irá hasta el número de filas-
1, la variable de control que generalmente llamamos “i”;
 El segundo ciclo for irá de cero al número de columnas-1 y
normalmente se usa la variable llamada “j”;
FUNDAMENTOS DE PROGRAMACIÓN
Ejemplo:
int main() {
int edades[3][2] = {{1,2},{9,8},{14,21}};
for (int i = 0; i < 3; i++) { // ciclo para filas
for (int j = 0; j < 2; j++) { // ciclo para columnas
cout << edades[ i ][ j ] << endl;
} // cierra ciclo de columnas
} // cierra ciclo de filas
} // cierra main
FUNDAMENTOS DE PROGRAMACIÓN
• Ejercicio: Escribir un programa que lea una matriz de 3 filas y 3 columnas
de valores enteros. A continuación, el programa debe pedir el número de
una fila. El programa deberá devolver el valor máximo de esa fila.
FUNDAMENTOS DE PROGRAMACIÓN
• Ejercicio: Escribir un programa que lea una matriz de números enteros y
que devuelva la suma de los elementos positivos de la matriz y la suma de
los elementos negativos.
FUNDAMENTOS DE PROGRAMACIÓN
• Ejercicio: Escribir un programa que lea un matriz de enteros de 2 filas y 4
columnas y muestre por pantalla la traspuesta a dicha matriz. Ejemplo:
FUNDAMENTOS DE PROGRAMACIÓN
• Ejercicio: Se dice que una matriz tiene un punto de silla si alguna posición
de la matriz es el menor valor de su fila y a la vez el mayor de su columna.
Escribir un programa que tenga como entrada una matriz de números
enteros y calcule la posición de un punto de silla (si es que existe).
FUNDAMENTOS DE PROGRAMACIÓN
Bibliografía
Cairó, Osvaldo. (2005). Metodología de la Programación. Tercera edición.
AlfaOmega. México, D. F.
FUNDAMENTOS DE PROGRAMACIÓN

More Related Content

What's hot

Tipos de datos abstractos
Tipos de datos abstractosTipos de datos abstractos
Tipos de datos abstractos
neftali omar peña balam
 
Estructura de Datos - Estructuras no lineales
Estructura de Datos - Estructuras no linealesEstructura de Datos - Estructuras no lineales
Estructura de Datos - Estructuras no lineales
José Antonio Sandoval Acosta
 
17 arreglos bidimensionales java
17 arreglos bidimensionales java17 arreglos bidimensionales java
17 arreglos bidimensionales java
Clara Patricia Avella Ibañez
 
Alice 3
Alice 3Alice 3
Arreglos en PSeInt
Arreglos en PSeIntArreglos en PSeInt
Arreglos en PSeInt
Jerry
 
LA IMPORTANCIA DEL CÁLCULO INTEGRAL EN LA CARRERA DE INGENIERÍA EN COMPUTACIÓN
LA IMPORTANCIA DEL CÁLCULO INTEGRAL EN LA CARRERA DE INGENIERÍA EN COMPUTACIÓNLA IMPORTANCIA DEL CÁLCULO INTEGRAL EN LA CARRERA DE INGENIERÍA EN COMPUTACIÓN
LA IMPORTANCIA DEL CÁLCULO INTEGRAL EN LA CARRERA DE INGENIERÍA EN COMPUTACIÓN
Jorge Iván Alba Hernández
 
Estructuras de datos lineales
Estructuras de datos linealesEstructuras de datos lineales
Estructuras de datos lineales
Alvaro Enrique Ruano
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
NANO-06
 
Programación 3: colas
Programación 3: colasProgramación 3: colas
Programación 3: colas
Angel Vázquez Patiño
 
Clase 3 Modelo Entidad Relacion
Clase 3   Modelo Entidad   RelacionClase 3   Modelo Entidad   Relacion
Clase 3 Modelo Entidad Relacion
oswchavez
 
Analisis Algoritmo
Analisis AlgoritmoAnalisis Algoritmo
Analisis Algoritmo
Esteban Andres Diaz Mina
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
Alvaro Enrique Ruano
 
Importancia de la implementación de las listas para la estructura de datos
Importancia de la implementación de las listas para la estructura de datosImportancia de la implementación de las listas para la estructura de datos
Importancia de la implementación de las listas para la estructura de datos
pepelebu1313
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
Luis Igoodbad
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Hugo Alberto Rivera Diaz
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
Cesar David Fernandez Grueso
 
MéTodos De EncriptacióN
MéTodos De EncriptacióNMéTodos De EncriptacióN
MéTodos De EncriptacióN
evelyn
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
Yorka Marisol Perez Feliz
 
Arreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeansArreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeans
Daniel Gómez
 
Herencia - Programación Orientada a Objetos
Herencia - Programación Orientada a ObjetosHerencia - Programación Orientada a Objetos
Herencia - Programación Orientada a Objetos
Mario Villaseñor
 

What's hot (20)

Tipos de datos abstractos
Tipos de datos abstractosTipos de datos abstractos
Tipos de datos abstractos
 
Estructura de Datos - Estructuras no lineales
Estructura de Datos - Estructuras no linealesEstructura de Datos - Estructuras no lineales
Estructura de Datos - Estructuras no lineales
 
17 arreglos bidimensionales java
17 arreglos bidimensionales java17 arreglos bidimensionales java
17 arreglos bidimensionales java
 
Alice 3
Alice 3Alice 3
Alice 3
 
Arreglos en PSeInt
Arreglos en PSeIntArreglos en PSeInt
Arreglos en PSeInt
 
LA IMPORTANCIA DEL CÁLCULO INTEGRAL EN LA CARRERA DE INGENIERÍA EN COMPUTACIÓN
LA IMPORTANCIA DEL CÁLCULO INTEGRAL EN LA CARRERA DE INGENIERÍA EN COMPUTACIÓNLA IMPORTANCIA DEL CÁLCULO INTEGRAL EN LA CARRERA DE INGENIERÍA EN COMPUTACIÓN
LA IMPORTANCIA DEL CÁLCULO INTEGRAL EN LA CARRERA DE INGENIERÍA EN COMPUTACIÓN
 
Estructuras de datos lineales
Estructuras de datos linealesEstructuras de datos lineales
Estructuras de datos lineales
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
 
Programación 3: colas
Programación 3: colasProgramación 3: colas
Programación 3: colas
 
Clase 3 Modelo Entidad Relacion
Clase 3   Modelo Entidad   RelacionClase 3   Modelo Entidad   Relacion
Clase 3 Modelo Entidad Relacion
 
Analisis Algoritmo
Analisis AlgoritmoAnalisis Algoritmo
Analisis Algoritmo
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
 
Importancia de la implementación de las listas para la estructura de datos
Importancia de la implementación de las listas para la estructura de datosImportancia de la implementación de las listas para la estructura de datos
Importancia de la implementación de las listas para la estructura de datos
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
MéTodos De EncriptacióN
MéTodos De EncriptacióNMéTodos De EncriptacióN
MéTodos De EncriptacióN
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
 
Arreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeansArreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeans
 
Herencia - Programación Orientada a Objetos
Herencia - Programación Orientada a ObjetosHerencia - Programación Orientada a Objetos
Herencia - Programación Orientada a Objetos
 

Similar to Fundamentos de Programación - Unidad IV: Arreglos (Vectores)

Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructurasIng. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
José Antonio Sandoval Acosta
 
arreglos y matrices
arreglos  y matricesarreglos  y matrices
arreglos y matrices
Kathery Correa Quiroz
 
Los 5 fantasticos
Los 5 fantasticosLos 5 fantasticos
Los 5 fantasticos
Brenda Jazmin
 
Xxxxxxxxxxxxxx
XxxxxxxxxxxxxxXxxxxxxxxxxxxx
Xxxxxxxxxxxxxx
Joselyn Aguirre
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#
elidetjc
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#
Joselyn Aguirre
 
Arreglos y matrices c++
Arreglos y matrices c++Arreglos y matrices c++
Arreglos y matrices c++
José Rocha Ramirez
 
Arreglos java
Arreglos javaArreglos java
Arreglos java
María Luisa Velasco
 
Programacion fantasticos
Programacion  fantasticosProgramacion  fantasticos
Programacion fantasticos
Brenda Jazmin
 
Tema 5 - Estructuras de datos.pdf
Tema 5 - Estructuras de datos.pdfTema 5 - Estructuras de datos.pdf
Tema 5 - Estructuras de datos.pdf
GabrieleGalieroCasay1
 
Capitulo4 arreglos
Capitulo4 arreglosCapitulo4 arreglos
Capitulo4 arreglos
Antonio Escobar Toledo
 
Arreglos unidad 2 semestre 2
Arreglos unidad 2 semestre 2Arreglos unidad 2 semestre 2
Arreglos unidad 2 semestre 2
K Manuel TN
 
Arreglos
ArreglosArreglos
Arreglos
K Manuel TN
 
Arreglos y matrices
Arreglos y matricesArreglos y matrices
Arreglos y matrices
C.T.P DE PITAL
 
Diapositivas marleni
Diapositivas marleniDiapositivas marleni
Diapositivas marleni
lenithoz
 
Diapositivas marleni
Diapositivas marleniDiapositivas marleni
Diapositivas marleni
lenithoz
 
02.1 - Estructura_General_De_Programa.pptx
02.1 - Estructura_General_De_Programa.pptx02.1 - Estructura_General_De_Programa.pptx
02.1 - Estructura_General_De_Programa.pptx
IrisDelCarmenRodrigu
 
Sesion 5
Sesion 5Sesion 5
Capitulo i modelos_matematicos_y_errores,_parte_1[1]
Capitulo i modelos_matematicos_y_errores,_parte_1[1]Capitulo i modelos_matematicos_y_errores,_parte_1[1]
Capitulo i modelos_matematicos_y_errores,_parte_1[1]
chinop7
 
Estructura de Datos: Arreglos
Estructura de Datos: Arreglos Estructura de Datos: Arreglos
Estructura de Datos: Arreglos
Anaida Escalona Tona
 

Similar to Fundamentos de Programación - Unidad IV: Arreglos (Vectores) (20)

Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructurasIng. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
 
arreglos y matrices
arreglos  y matricesarreglos  y matrices
arreglos y matrices
 
Los 5 fantasticos
Los 5 fantasticosLos 5 fantasticos
Los 5 fantasticos
 
Xxxxxxxxxxxxxx
XxxxxxxxxxxxxxXxxxxxxxxxxxxx
Xxxxxxxxxxxxxx
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#
 
Arreglos y matrices c++
Arreglos y matrices c++Arreglos y matrices c++
Arreglos y matrices c++
 
Arreglos java
Arreglos javaArreglos java
Arreglos java
 
Programacion fantasticos
Programacion  fantasticosProgramacion  fantasticos
Programacion fantasticos
 
Tema 5 - Estructuras de datos.pdf
Tema 5 - Estructuras de datos.pdfTema 5 - Estructuras de datos.pdf
Tema 5 - Estructuras de datos.pdf
 
Capitulo4 arreglos
Capitulo4 arreglosCapitulo4 arreglos
Capitulo4 arreglos
 
Arreglos unidad 2 semestre 2
Arreglos unidad 2 semestre 2Arreglos unidad 2 semestre 2
Arreglos unidad 2 semestre 2
 
Arreglos
ArreglosArreglos
Arreglos
 
Arreglos y matrices
Arreglos y matricesArreglos y matrices
Arreglos y matrices
 
Diapositivas marleni
Diapositivas marleniDiapositivas marleni
Diapositivas marleni
 
Diapositivas marleni
Diapositivas marleniDiapositivas marleni
Diapositivas marleni
 
02.1 - Estructura_General_De_Programa.pptx
02.1 - Estructura_General_De_Programa.pptx02.1 - Estructura_General_De_Programa.pptx
02.1 - Estructura_General_De_Programa.pptx
 
Sesion 5
Sesion 5Sesion 5
Sesion 5
 
Capitulo i modelos_matematicos_y_errores,_parte_1[1]
Capitulo i modelos_matematicos_y_errores,_parte_1[1]Capitulo i modelos_matematicos_y_errores,_parte_1[1]
Capitulo i modelos_matematicos_y_errores,_parte_1[1]
 
Estructura de Datos: Arreglos
Estructura de Datos: Arreglos Estructura de Datos: Arreglos
Estructura de Datos: Arreglos
 

More from José Antonio Sandoval Acosta

Linea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptxLinea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptx
José Antonio Sandoval Acosta
 
UNIDAD 2 CLASIFICACION DE LOS MATERIALES.pptx
UNIDAD 2 CLASIFICACION DE LOS  MATERIALES.pptxUNIDAD 2 CLASIFICACION DE LOS  MATERIALES.pptx
UNIDAD 2 CLASIFICACION DE LOS MATERIALES.pptx
José Antonio Sandoval Acosta
 
croquis de aulas UAIM topolobampo FEB 2024
croquis de aulas UAIM topolobampo  FEB 2024croquis de aulas UAIM topolobampo  FEB 2024
croquis de aulas UAIM topolobampo FEB 2024
José Antonio Sandoval Acosta
 
Ing. Mecatronica Prog. Básica, U5 Módulos
Ing. Mecatronica Prog. Básica, U5 MódulosIng. Mecatronica Prog. Básica, U5 Módulos
Ing. Mecatronica Prog. Básica, U5 Módulos
José Antonio Sandoval Acosta
 
Ing. Mecatrónica, Prog. Básica U3 control de flujo
Ing. Mecatrónica, Prog. Básica U3 control de flujoIng. Mecatrónica, Prog. Básica U3 control de flujo
Ing. Mecatrónica, Prog. Básica U3 control de flujo
José Antonio Sandoval Acosta
 
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacionIng. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
José Antonio Sandoval Acosta
 
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmosIng. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
José Antonio Sandoval Acosta
 
Manual de prácticas y antología para POO
Manual de prácticas y antología para  POOManual de prácticas y antología para  POO
Manual de prácticas y antología para POO
José Antonio Sandoval Acosta
 
Aplicaciones móviles intro.
Aplicaciones móviles intro.Aplicaciones móviles intro.
Aplicaciones móviles intro.
José Antonio Sandoval Acosta
 
Economia
EconomiaEconomia
ISCA-quimica-Equipo 2.pptx
ISCA-quimica-Equipo 2.pptxISCA-quimica-Equipo 2.pptx
ISCA-quimica-Equipo 2.pptx
José Antonio Sandoval Acosta
 
Plantilla presentación.pptx
Plantilla presentación.pptxPlantilla presentación.pptx
Plantilla presentación.pptx
José Antonio Sandoval Acosta
 
kitchenham.pptx
kitchenham.pptxkitchenham.pptx
Diagrama de Casos de Uso UML
Diagrama de Casos de Uso UMLDiagrama de Casos de Uso UML
Diagrama de Casos de Uso UML
José Antonio Sandoval Acosta
 
Introducción al Diagrama de Clases UML
Introducción al Diagrama de Clases UMLIntroducción al Diagrama de Clases UML
Introducción al Diagrama de Clases UML
José Antonio Sandoval Acosta
 
Diagrama de clases UML
Diagrama de clases UMLDiagrama de clases UML
Diagrama de clases UML
José Antonio Sandoval Acosta
 
Diagrama UML Casos de Uso
Diagrama UML Casos de UsoDiagrama UML Casos de Uso
Diagrama UML Casos de Uso
José Antonio Sandoval Acosta
 
Tema 3 - Comandos básicos.pdf
Tema 3 - Comandos básicos.pdfTema 3 - Comandos básicos.pdf
Tema 3 - Comandos básicos.pdf
José Antonio Sandoval Acosta
 
Tema 1 - Intro.pdf
Tema 1 - Intro.pdfTema 1 - Intro.pdf
Tema 1 - Intro.pdf
José Antonio Sandoval Acosta
 
Receta de albóndigas de res
Receta de albóndigas de resReceta de albóndigas de res
Receta de albóndigas de res
José Antonio Sandoval Acosta
 

More from José Antonio Sandoval Acosta (20)

Linea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptxLinea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptx
 
UNIDAD 2 CLASIFICACION DE LOS MATERIALES.pptx
UNIDAD 2 CLASIFICACION DE LOS  MATERIALES.pptxUNIDAD 2 CLASIFICACION DE LOS  MATERIALES.pptx
UNIDAD 2 CLASIFICACION DE LOS MATERIALES.pptx
 
croquis de aulas UAIM topolobampo FEB 2024
croquis de aulas UAIM topolobampo  FEB 2024croquis de aulas UAIM topolobampo  FEB 2024
croquis de aulas UAIM topolobampo FEB 2024
 
Ing. Mecatronica Prog. Básica, U5 Módulos
Ing. Mecatronica Prog. Básica, U5 MódulosIng. Mecatronica Prog. Básica, U5 Módulos
Ing. Mecatronica Prog. Básica, U5 Módulos
 
Ing. Mecatrónica, Prog. Básica U3 control de flujo
Ing. Mecatrónica, Prog. Básica U3 control de flujoIng. Mecatrónica, Prog. Básica U3 control de flujo
Ing. Mecatrónica, Prog. Básica U3 control de flujo
 
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacionIng. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
 
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmosIng. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
 
Manual de prácticas y antología para POO
Manual de prácticas y antología para  POOManual de prácticas y antología para  POO
Manual de prácticas y antología para POO
 
Aplicaciones móviles intro.
Aplicaciones móviles intro.Aplicaciones móviles intro.
Aplicaciones móviles intro.
 
Economia
EconomiaEconomia
Economia
 
ISCA-quimica-Equipo 2.pptx
ISCA-quimica-Equipo 2.pptxISCA-quimica-Equipo 2.pptx
ISCA-quimica-Equipo 2.pptx
 
Plantilla presentación.pptx
Plantilla presentación.pptxPlantilla presentación.pptx
Plantilla presentación.pptx
 
kitchenham.pptx
kitchenham.pptxkitchenham.pptx
kitchenham.pptx
 
Diagrama de Casos de Uso UML
Diagrama de Casos de Uso UMLDiagrama de Casos de Uso UML
Diagrama de Casos de Uso UML
 
Introducción al Diagrama de Clases UML
Introducción al Diagrama de Clases UMLIntroducción al Diagrama de Clases UML
Introducción al Diagrama de Clases UML
 
Diagrama de clases UML
Diagrama de clases UMLDiagrama de clases UML
Diagrama de clases UML
 
Diagrama UML Casos de Uso
Diagrama UML Casos de UsoDiagrama UML Casos de Uso
Diagrama UML Casos de Uso
 
Tema 3 - Comandos básicos.pdf
Tema 3 - Comandos básicos.pdfTema 3 - Comandos básicos.pdf
Tema 3 - Comandos básicos.pdf
 
Tema 1 - Intro.pdf
Tema 1 - Intro.pdfTema 1 - Intro.pdf
Tema 1 - Intro.pdf
 
Receta de albóndigas de res
Receta de albóndigas de resReceta de albóndigas de res
Receta de albóndigas de res
 

Recently uploaded

1 ANALISIS DE MASA Y ENERGÍA DE VOLÚMENES DE CONTROL [Autoguardado].pptx
1 ANALISIS DE MASA Y ENERGÍA DE VOLÚMENES DE CONTROL [Autoguardado].pptx1 ANALISIS DE MASA Y ENERGÍA DE VOLÚMENES DE CONTROL [Autoguardado].pptx
1 ANALISIS DE MASA Y ENERGÍA DE VOLÚMENES DE CONTROL [Autoguardado].pptx
RenanWVargas
 
VIRUS DE LA MANCHA ANILLADA DE LA PAPAYA(PRSV).ppt
VIRUS DE LA MANCHA ANILLADA DE LA PAPAYA(PRSV).pptVIRUS DE LA MANCHA ANILLADA DE LA PAPAYA(PRSV).ppt
VIRUS DE LA MANCHA ANILLADA DE LA PAPAYA(PRSV).ppt
HectorEnriqueCespede1
 
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtualSESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
JuanGavidia2
 
CURSO COMPLETO FIBRA OPTICA MULTIMODO.pdf
CURSO COMPLETO FIBRA OPTICA MULTIMODO.pdfCURSO COMPLETO FIBRA OPTICA MULTIMODO.pdf
CURSO COMPLETO FIBRA OPTICA MULTIMODO.pdf
DanielCisternasCorte
 
Carlos Augusto da Silva Lins todosIngressantes2024-1.pdf
Carlos Augusto da Silva Lins todosIngressantes2024-1.pdfCarlos Augusto da Silva Lins todosIngressantes2024-1.pdf
Carlos Augusto da Silva Lins todosIngressantes2024-1.pdf
juntosvenceremosbras
 
ANALISIS ESTRUCTURAL SAP2000 EN SISTEMA ESTRUCTURALES
ANALISIS ESTRUCTURAL SAP2000 EN SISTEMA ESTRUCTURALESANALISIS ESTRUCTURAL SAP2000 EN SISTEMA ESTRUCTURALES
ANALISIS ESTRUCTURAL SAP2000 EN SISTEMA ESTRUCTURALES
John Paul Collazos Campos
 
ACTORES VIALES PLAN ESTRATEGICO DE SEGURIDAD VIAL
ACTORES VIALES PLAN ESTRATEGICO DE SEGURIDAD VIALACTORES VIALES PLAN ESTRATEGICO DE SEGURIDAD VIAL
ACTORES VIALES PLAN ESTRATEGICO DE SEGURIDAD VIAL
sstalejandragarcia
 
561425171-5-1-Modelos-de-Pronosticos.pptx
561425171-5-1-Modelos-de-Pronosticos.pptx561425171-5-1-Modelos-de-Pronosticos.pptx
561425171-5-1-Modelos-de-Pronosticos.pptx
Angel Tello
 
Aletas de Transferencia de Calor Jefferson Colina.pptx
Aletas de Transferencia de Calor Jefferson Colina.pptxAletas de Transferencia de Calor Jefferson Colina.pptx
Aletas de Transferencia de Calor Jefferson Colina.pptx
jeffersoncolina427
 
Características de los suelos como los histosoles.pptx
Características de los suelos como los histosoles.pptxCaracterísticas de los suelos como los histosoles.pptx
Características de los suelos como los histosoles.pptx
MONICADELROCIOMUNZON1
 
Normatividad y Regulación Energética - Introducción
Normatividad y Regulación Energética - IntroducciónNormatividad y Regulación Energética - Introducción
Normatividad y Regulación Energética - Introducción
José Andrés Alanís Navarro
 
Klohn Crippen Berger _ Brochure LAM .pdf
Klohn Crippen Berger _ Brochure LAM .pdfKlohn Crippen Berger _ Brochure LAM .pdf
Klohn Crippen Berger _ Brochure LAM .pdf
ciniguez1
 
Control Industrial control de procesos .pptx
Control Industrial control de procesos .pptxControl Industrial control de procesos .pptx
Control Industrial control de procesos .pptx
Efrain Yungan
 
Presentación Aislante térmico.pdf Transferencia de calor
Presentación Aislante térmico.pdf Transferencia de calorPresentación Aislante térmico.pdf Transferencia de calor
Presentación Aislante térmico.pdf Transferencia de calor
GerardoBracho3
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
karenperalta62
 
Pasamuros Cortafuego - Industrias Metalfox
Pasamuros Cortafuego - Industrias MetalfoxPasamuros Cortafuego - Industrias Metalfox
Pasamuros Cortafuego - Industrias Metalfox
INDUSTRIAS METALFOX S.A.S.
 
ANALISIS ESTRUCTURALES SAP2000 EN SISTEMAS ESTRUCTURALES
ANALISIS ESTRUCTURALES SAP2000 EN SISTEMAS ESTRUCTURALESANALISIS ESTRUCTURALES SAP2000 EN SISTEMAS ESTRUCTURALES
ANALISIS ESTRUCTURALES SAP2000 EN SISTEMAS ESTRUCTURALES
John Paul Collazos Campos
 
MATERIALES PELIGROSOS NIVEL DE ADVERTENCIA
MATERIALES PELIGROSOS NIVEL DE ADVERTENCIAMATERIALES PELIGROSOS NIVEL DE ADVERTENCIA
MATERIALES PELIGROSOS NIVEL DE ADVERTENCIA
ROXYLOPEZ10
 
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptxCARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
0602021003
 
CHARLA NFPA70E Seguridad Eléctrica en lugares de trabajo
CHARLA NFPA70E Seguridad Eléctrica en lugares de trabajoCHARLA NFPA70E Seguridad Eléctrica en lugares de trabajo
CHARLA NFPA70E Seguridad Eléctrica en lugares de trabajo
DiegoMarinado1
 

Recently uploaded (20)

1 ANALISIS DE MASA Y ENERGÍA DE VOLÚMENES DE CONTROL [Autoguardado].pptx
1 ANALISIS DE MASA Y ENERGÍA DE VOLÚMENES DE CONTROL [Autoguardado].pptx1 ANALISIS DE MASA Y ENERGÍA DE VOLÚMENES DE CONTROL [Autoguardado].pptx
1 ANALISIS DE MASA Y ENERGÍA DE VOLÚMENES DE CONTROL [Autoguardado].pptx
 
VIRUS DE LA MANCHA ANILLADA DE LA PAPAYA(PRSV).ppt
VIRUS DE LA MANCHA ANILLADA DE LA PAPAYA(PRSV).pptVIRUS DE LA MANCHA ANILLADA DE LA PAPAYA(PRSV).ppt
VIRUS DE LA MANCHA ANILLADA DE LA PAPAYA(PRSV).ppt
 
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtualSESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
 
CURSO COMPLETO FIBRA OPTICA MULTIMODO.pdf
CURSO COMPLETO FIBRA OPTICA MULTIMODO.pdfCURSO COMPLETO FIBRA OPTICA MULTIMODO.pdf
CURSO COMPLETO FIBRA OPTICA MULTIMODO.pdf
 
Carlos Augusto da Silva Lins todosIngressantes2024-1.pdf
Carlos Augusto da Silva Lins todosIngressantes2024-1.pdfCarlos Augusto da Silva Lins todosIngressantes2024-1.pdf
Carlos Augusto da Silva Lins todosIngressantes2024-1.pdf
 
ANALISIS ESTRUCTURAL SAP2000 EN SISTEMA ESTRUCTURALES
ANALISIS ESTRUCTURAL SAP2000 EN SISTEMA ESTRUCTURALESANALISIS ESTRUCTURAL SAP2000 EN SISTEMA ESTRUCTURALES
ANALISIS ESTRUCTURAL SAP2000 EN SISTEMA ESTRUCTURALES
 
ACTORES VIALES PLAN ESTRATEGICO DE SEGURIDAD VIAL
ACTORES VIALES PLAN ESTRATEGICO DE SEGURIDAD VIALACTORES VIALES PLAN ESTRATEGICO DE SEGURIDAD VIAL
ACTORES VIALES PLAN ESTRATEGICO DE SEGURIDAD VIAL
 
561425171-5-1-Modelos-de-Pronosticos.pptx
561425171-5-1-Modelos-de-Pronosticos.pptx561425171-5-1-Modelos-de-Pronosticos.pptx
561425171-5-1-Modelos-de-Pronosticos.pptx
 
Aletas de Transferencia de Calor Jefferson Colina.pptx
Aletas de Transferencia de Calor Jefferson Colina.pptxAletas de Transferencia de Calor Jefferson Colina.pptx
Aletas de Transferencia de Calor Jefferson Colina.pptx
 
Características de los suelos como los histosoles.pptx
Características de los suelos como los histosoles.pptxCaracterísticas de los suelos como los histosoles.pptx
Características de los suelos como los histosoles.pptx
 
Normatividad y Regulación Energética - Introducción
Normatividad y Regulación Energética - IntroducciónNormatividad y Regulación Energética - Introducción
Normatividad y Regulación Energética - Introducción
 
Klohn Crippen Berger _ Brochure LAM .pdf
Klohn Crippen Berger _ Brochure LAM .pdfKlohn Crippen Berger _ Brochure LAM .pdf
Klohn Crippen Berger _ Brochure LAM .pdf
 
Control Industrial control de procesos .pptx
Control Industrial control de procesos .pptxControl Industrial control de procesos .pptx
Control Industrial control de procesos .pptx
 
Presentación Aislante térmico.pdf Transferencia de calor
Presentación Aislante térmico.pdf Transferencia de calorPresentación Aislante térmico.pdf Transferencia de calor
Presentación Aislante térmico.pdf Transferencia de calor
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
 
Pasamuros Cortafuego - Industrias Metalfox
Pasamuros Cortafuego - Industrias MetalfoxPasamuros Cortafuego - Industrias Metalfox
Pasamuros Cortafuego - Industrias Metalfox
 
ANALISIS ESTRUCTURALES SAP2000 EN SISTEMAS ESTRUCTURALES
ANALISIS ESTRUCTURALES SAP2000 EN SISTEMAS ESTRUCTURALESANALISIS ESTRUCTURALES SAP2000 EN SISTEMAS ESTRUCTURALES
ANALISIS ESTRUCTURALES SAP2000 EN SISTEMAS ESTRUCTURALES
 
MATERIALES PELIGROSOS NIVEL DE ADVERTENCIA
MATERIALES PELIGROSOS NIVEL DE ADVERTENCIAMATERIALES PELIGROSOS NIVEL DE ADVERTENCIA
MATERIALES PELIGROSOS NIVEL DE ADVERTENCIA
 
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptxCARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
 
CHARLA NFPA70E Seguridad Eléctrica en lugares de trabajo
CHARLA NFPA70E Seguridad Eléctrica en lugares de trabajoCHARLA NFPA70E Seguridad Eléctrica en lugares de trabajo
CHARLA NFPA70E Seguridad Eléctrica en lugares de trabajo
 

Fundamentos de Programación - Unidad IV: Arreglos (Vectores)

  • 1. TECNOLÓGICO NACIONAL DE MÉXICO Instituto Tecnológico Superior de Guasave Ingeniería en Sistemas Computacionales Fundamentos de Programación Unidad IV: Arreglos (Vectores) Mtro. José Antonio Sandoval Acosta Retícula ISIC-2010-224: Programa: AED-1285 itsguasave.edu.mx
  • 2. FUNDAMENTOS DE PROGRAMACION Competencia: • Conoce y aplica estructuras de datos en un lenguaje de programación que permitan la organización de datos en la resolución de problemas reales.
  • 3. Arreglos • En clase ya conocimos algunos tipos básicos como por ejemplo los tipos char, int y float. El lenguaje C++ permite, además, construir estructuras más complejas a partir de estos tipos básicos. Una de las construcciones que podemos definir son los arreglos. • Arreglo: Colección ordenada de elementos de un mismo tipo. Ordenada significa que cada elemento tiene una ubicación determinada dentro del arreglo y debemos conocerla para poder accederlo. FUNDAMENTOS DE PROGRAMACIÓN
  • 4. Sintaxis: tipo nombre_variable[longitud]; Ejemplo: int matricula[20]; • Con esto diremos que nombre_variable es un arreglo de longitud elementos del tipo necesitado. Cabe destacar que longitud debe ser cualquier expresión entera constante mayor que cero. FUNDAMENTOS DE PROGRAMACIÓN
  • 6. Asignación de un arreglo: nombre_variable[índice] = valor o expresión del tipo requerido; Ejemplos: calificaciones[9]=(cal1+cal2+cal3)/3; calificaciones[7]=95; • El índice debe ser una expresión del tipo entero en el rango [0, longitud-1]. • Cabe destacar que C++ no revisa que el valor de la expresión sea menor a longitud, simplemente asigna el valor a esa posición de memoria como si formara parte del arreglo. FUNDAMENTOS DE PROGRAMACIÓN
  • 7. Acceso al contenido de un arreglo: • nombre_variable[índice]; es valor del tipo requerido que puede ser asignado a una variable, o pasado como parámetro, imprimirlo, etc. • Aquí también vale la aclaración de que el índice debe estar dentro del rango de definición del arreglo, C++ no revisará que esto sea cierto y devolverá lo contenido en la posición de memoria correspondiente a un arreglo de mayor longitud, el dato obtenido de esta manera es basura. FUNDAMENTOS DE PROGRAMACIÓN
  • 8. Ejercicio: Hacer un programa que capture un arreglo de 10 posiciones, una vez lleno pedir por teclado un número y buscar si se encuentra dentro del arreglo indicando la posición del mismo. FUNDAMENTOS DE PROGRAMACIÓN
  • 9. Ejercicio: Hacer un programa que capture la 10 números en un arreglo de igual tamaño y determine la suma total de los mismos y el promedio. FUNDAMENTOS DE PROGRAMACIÓN
  • 10. Ejercicio: Capturar 3 arreglos de 5 posiciones. Después multiplicar el primero por el segundo y al resultado sumarle el tercero, guardar el resultado final en un cuarto arreglo, el cual debe ser desplegado en pantalla. FUNDAMENTOS DE PROGRAMACIÓN
  • 11. Ejercicio: Hacer un programa que con arreglos de 10 posiciones capture lo siguiente: • Matricula de estudiante. • Calificación en una materia con 3 parciales. • Desplegar en pantalla el promedio por alumno • Desplegar en pantalla el promedio del grupo. FUNDAMENTOS DE PROGRAMACIÓN
  • 12. Ejercicio: • Hacer un programa que capture un arreglo de 10 posiciones, y a la vez llene un segundo arreglo con el valor en la posición contraria, es decir, lo capturado en la posición 0 se pasa a la posición 9 del segundo arreglo, etc. FUNDAMENTOS DE PROGRAMACIÓN
  • 13. Ejercicio: • Hacer un programa que capture las infracciones de velocidad en la estación de policía. • Capturar en vectores de 10 posiciones los sig. Datos: Número de licencia, velocidad registrada (k/h), velocidad limite (k/h), multa. • Además indicar la suma total de las multas. FUNDAMENTOS DE PROGRAMACIÓN
  • 14. Matrices • Una matriz es una estructura de datos, o más técnicamente, un espacio de memoria que permite almacenar una colección de elementos, todos del mismo tipo. • La diferencia con los arreglos está en que, en las matrices, los elementos no están organizados linealmente sino que su organización es bidimensional, es decir, en filas y columnas. • Conviene imaginar una matriz como una organización de celdas de memoria, o casillas, en cada una de las cuales se puede guardar un elemento de la colección. FUNDAMENTOS DE PROGRAMACIÓN
  • 15. Además, es usual dibujarla como lo ilustra la figura siguiente: FUNDAMENTOS DE PROGRAMACIÓN • Esta figura representa un matriz de cuatro filas (numeradas verticalmente de 0 a 3) y seis columnas (numeradas horizontalmente de 0 a 5). • En cada una de las 24 celdas o casillas se puede guardar un dato. • La dimensión o tamaño de una matriz es el número filas por el número de columnas. • Debe ser claro entonces que la figura anterior es la gráfica de una matriz de dimensión 4x6.
  • 16. • La numeración de las filas y las columnas determina que cada una de las casillas de una matriz tiene asociados dos números índice que la identifican de manera única. • A estos números se les llama índice de fila e índice de columna, respectivamente. • En el seudocódigo, y también en C y C++, las filas y las columnas se numeran desde 0 y finalizan en n-1. FUNDAMENTOS DE PROGRAMACIÓN
  • 17. Declaración de una matriz en C++: • La sintaxis es casi la misma excepto que hemos añadido un par de corchetes "[ ]" más esta vez y al interior de éstos debemos poner el número de filas y columnas máximas de la matriz, respectivamente. Ejemplo: int myMatriz1[10][5]; float myMatriz2[5][10]; string myMatriz3[15][15]; FUNDAMENTOS DE PROGRAMACIÓN
  • 18. ¿Cómo inicializar una matriz en C++? • En cuanto tenemos declarado una matriz, es posible asignarle valores a cada una de sus casillas, sus valores deben coincidir con el tipo de dato que le asignamos a dicha matriz. Ejemplo: int myMatriz[2][2] = {{1,2}, {3,4}}; FUNDAMENTOS DE PROGRAMACIÓN  El valor inicial corresponde a la fila cero, columna cero [0][0] y tiene el valor de 1;  En la fila cero, columna uno [0][1] tenemos el valor de 2;  En la fila uno, columna cero [1][0] el valor de 3;  Finalmente, en la fila uno, columna uno [1][1] el valor de 4.
  • 19. Otra forma de hacerlo es con ciclos, dentro de los cuales se asigna un valor inicial a cada casilla de la matriz, puede ser un cero en el caso de las matrices numéricas o una cadena vacía para las tipo cadena. Ejemplo: int edades[3][2]; for (int i = 0; i < 3; i++) { // ciclo para filas for (int j = 0; j < 2; j++) { // ciclo para columnas edades[ i ][ j ]=0; } // cierra ciclo de columnas } // cierra ciclo de filas FUNDAMENTOS DE PROGRAMACIÓN
  • 20. Obtener el valor de una casilla específica • Para acceder al valor de una casilla nuevamente haremos uso de los corchetes, pero esta vez no para declarar tamaños (porque eso ya lo hicimos) sino para indicar posiciones (fila y columna). Ejemplo: int myMatriz[2][2] = {{7,2},{1,4}}; //Matriz con 4 elementos int num = myMatriz[0][0]; //Obtiene el valor de la casilla cout << num << endl; //Despliega el valor obtenido que es 7 FUNDAMENTOS DE PROGRAMACIÓN
  • 21. Recorrer una matriz en C++ • Para obtener todos los datos que se encuentran al interior de una matriz, debemos acceder a cada posición, esto se hace fácilmente con dos ciclos for (anidados). • La lógica de este procedimiento es la siguiente:  El primer ciclo for comenzará desde cero e irá hasta el número de filas- 1, la variable de control que generalmente llamamos “i”;  El segundo ciclo for irá de cero al número de columnas-1 y normalmente se usa la variable llamada “j”; FUNDAMENTOS DE PROGRAMACIÓN
  • 22. Ejemplo: int main() { int edades[3][2] = {{1,2},{9,8},{14,21}}; for (int i = 0; i < 3; i++) { // ciclo para filas for (int j = 0; j < 2; j++) { // ciclo para columnas cout << edades[ i ][ j ] << endl; } // cierra ciclo de columnas } // cierra ciclo de filas } // cierra main FUNDAMENTOS DE PROGRAMACIÓN
  • 23. • Ejercicio: Escribir un programa que lea una matriz de 3 filas y 3 columnas de valores enteros. A continuación, el programa debe pedir el número de una fila. El programa deberá devolver el valor máximo de esa fila. FUNDAMENTOS DE PROGRAMACIÓN
  • 24. • Ejercicio: Escribir un programa que lea una matriz de números enteros y que devuelva la suma de los elementos positivos de la matriz y la suma de los elementos negativos. FUNDAMENTOS DE PROGRAMACIÓN
  • 25. • Ejercicio: Escribir un programa que lea un matriz de enteros de 2 filas y 4 columnas y muestre por pantalla la traspuesta a dicha matriz. Ejemplo: FUNDAMENTOS DE PROGRAMACIÓN
  • 26. • Ejercicio: Se dice que una matriz tiene un punto de silla si alguna posición de la matriz es el menor valor de su fila y a la vez el mayor de su columna. Escribir un programa que tenga como entrada una matriz de números enteros y calcule la posición de un punto de silla (si es que existe). FUNDAMENTOS DE PROGRAMACIÓN
  • 27. Bibliografía Cairó, Osvaldo. (2005). Metodología de la Programación. Tercera edición. AlfaOmega. México, D. F. FUNDAMENTOS DE PROGRAMACIÓN