Funciones Arreglos y Vectores Leccin 5 Funciones Leccin

  • Slides: 64
Download presentation
Funciones, Arreglos y Vectores Lección 5: Funciones Lección 6: Arreglos y Vectores

Funciones, Arreglos y Vectores Lección 5: Funciones Lección 6: Arreglos y Vectores

Funciones Lección 5: Funciones Basada en el Capítulo 6 de C++ para Programadores, Deitel

Funciones Lección 5: Funciones Basada en el Capítulo 6 de C++ para Programadores, Deitel Temas • • Jerarquía de promoción para tipos fundamentales de datos Simulación con números aleatorios Reglas de scope o alcance Funciones inline Pase de parámetros por valor y por referencia Argumentos default para un función Funciones sobrecargadas (overloaded) Plantillas o modelos (templates) para funciones

Funciones Jerarquía de promoción para tipos fundamentales de datos En la siguiente figura se

Funciones Jerarquía de promoción para tipos fundamentales de datos En la siguiente figura se muestran los distintos tipos de datos y sus derivaciones en un orden de mayor a menor jerarquía de promoción.

Funciones • Los tipos de menor jerarquía (abajo) pueden ser promovidos (convertidos) a tipos

Funciones • Los tipos de menor jerarquía (abajo) pueden ser promovidos (convertidos) a tipos de mayor jerarquía (arriba). Un char puede ser promovido a int o float; pero un double no puede ser promovido a int, por ejemplo. • Los compiladores de C y C++ generarán un mensaje de error o de advertencia (warning), respectivamente, si se trata de utilizar un dato de mayor jerarquía como un dato de menor jerarquía. • Los sinónimos se refieren a que se puede usar una forma abreviada para especificar un cierto tipo de dato, por ejemplo: unsigned short int x; es lo mismo que unsigned short x; • Si en una expresión se encuentran distintos tipos de datos, todos ellos serán promovidos (convertidos) al tipo de dato con mayor jerarquía dentro de la expresión. El valor de la expression también será del tipo de dato de mayor jerarquía. Ejemplo: Asuma que x es de tipo int, c de tipo char, y w y z de tipo float. En la siguiente expresión todos los datos van a ser promovidos a float y el valor resultante de la expresion, también: w = (c + x) / z; • La promoción de datos también se da al pasar argumentos a una función. Si una función espera un argumento de cierto tipo y se le pasa un argumento de mayor jerarquía, éste será promovido al tipo del argumento esperado por la función.

Funciones Programa: fig 06_10. cpp Simulación del juego de datos Craps El jugador tira

Funciones Programa: fig 06_10. cpp Simulación del juego de datos Craps El jugador tira dos dados. Si en el primer tiro obtiene un 7 u 11, gana; si en el primer tiro obtiene 2, 3 o 12, pierde; si obtiene cualquier otro número en el primer tiro, para ganar, en los subsecuentes tiros debe obtener ese número antes de obtener un 7, de lo contrario pierde.

Funciones

Funciones

Funciones

Funciones

Funciones

Funciones

Funciones Programa: fig 06_11. cpp Reglas de alcance o scope

Funciones Programa: fig 06_11. cpp Reglas de alcance o scope

Funciones

Funciones

Funciones

Funciones

Funciones Programa: fig 06_13. cpp Funciones en línea

Funciones Programa: fig 06_13. cpp Funciones en línea

Funciones

Funciones

Funciones Programa: fig 06_18. cpp Pase de argumentos por valor y por referencia

Funciones Programa: fig 06_18. cpp Pase de argumentos por valor y por referencia

Funciones

Funciones

Funciones Programa: fig 06_21. cpp Argumentos default de funciones

Funciones Programa: fig 06_21. cpp Argumentos default de funciones

Funciones

Funciones

Funciones Programa: fig 06_22. cpp Operador unario de resolución de scope (alcance)

Funciones Programa: fig 06_22. cpp Operador unario de resolución de scope (alcance)

Funciones

Funciones

Funciones Programa: fig 06_23. cpp Funciones Sobrecargadas (overloaded)

Funciones Programa: fig 06_23. cpp Funciones Sobrecargadas (overloaded)

Funciones

Funciones

Funciones Programa: fig 06_26. cpp Plantillas o modelos de funciones

Funciones Programa: fig 06_26. cpp Plantillas o modelos de funciones

Funciones

Funciones

Funciones

Funciones

Funciones

Funciones

Funciones

Funciones

Arreglos y Vectores Lección 6: Arreglos y Vectores Basada en el Capítulo 7 de

Arreglos y Vectores Lección 6: Arreglos y Vectores Basada en el Capítulo 7 de C++ para Programadores, Deitel Temas • • Declaración de arreglos Listas de inicializadores de arreglos Arreglos de caracteres procesados como cadenas Inicialización de arreglos estáticos y automáticos Pase de arreglos y elementos individuales de arreglos a funciones Arreglos multidimensionales Listas de inicializadores de arreglos anidados Plantilla clase vector de la librería estándar de C++

Arreglos y Vectores Programa: fig 07_03. cpp Inicialización de arreglos

Arreglos y Vectores Programa: fig 07_03. cpp Inicialización de arreglos

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores Programa: fig 07_04. cpp Inicialización de arreglos en su declaración

Arreglos y Vectores Programa: fig 07_04. cpp Inicialización de arreglos en su declaración

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores Programa: fig 07_12. cpp Arreglo de caracteres procesados como cadenas

Arreglos y Vectores Programa: fig 07_12. cpp Arreglo de caracteres procesados como cadenas

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores Programa: fig 07_13. cpp Inicialización de arreglos estáticos y automáticos

Arreglos y Vectores Programa: fig 07_13. cpp Inicialización de arreglos estáticos y automáticos

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores Programa: fig 07_14. cpp Pase de arreglos y elementos individuales de

Arreglos y Vectores Programa: fig 07_14. cpp Pase de arreglos y elementos individuales de arreglo a funciones

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores Programa: fig 07_18. cpp Uso de arreglos para almacenar las calificaciones

Arreglos y Vectores Programa: fig 07_18. cpp Uso de arreglos para almacenar las calificaciones

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores Programa: fig 07_22. cpp Inicialización de arreglos multidimensionales

Arreglos y Vectores Programa: fig 07_22. cpp Inicialización de arreglos multidimensionales

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores Programa: fig 07_22. cpp Uso de arreglo bidimensional para almacenar calificaciones

Arreglos y Vectores Programa: fig 07_22. cpp Uso de arreglo bidimensional para almacenar calificaciones

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores Programa: fig 07_26. cpp Plantilla de clase vector de la librería

Arreglos y Vectores Programa: fig 07_26. cpp Plantilla de clase vector de la librería estándar de C++

Arreglos y Vectores Antes de ver a main(), estudiemos las dos funciones que se

Arreglos y Vectores Antes de ver a main(), estudiemos las dos funciones que se encuentran definidas al final del programa:

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores

Arreglos y Vectores