09.-+Introducción+a+los+punteros.

Anterior. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __Índice __. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Siguiente __.__

4.9.- Introducción a los punteros.

 Ejercicios muy fáciles. Fáciles. Dificultad media-baja. Dificultad media.  Dificultad media-alta. Dificultad alta. Dificultad extrema.

 1.- Conceptos básicos.  **Ejemplo:** **Puntero0. **Dirección de una variable

 2.- Acceder al contenido de la variable a la que apunta el puntero.  **Ejemplo: Punteros1: ** Programa que muestra la relación entre dos variables enteras, sus correspondientes direcciones y sus punteros asociados.

 ¿Qué salida generan los sencillos programas que se muestran? Compruébalo ejecutándolos. **Ejemplo: Punteros2: **

**<span style="background-color: transparent; color: #000000; font-family: serif; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">Ejemplo: Punteros3: **

<span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">**<span style="background-color: transparent; color: #000000; font-family: serif; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">Ejemplo: Punteros4 **: Error de asignación. El programa intenta utilizar un puntero sin saber dónde apunta.El puntero no ha sido inicializado.

<span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;"> **<span style="background-color: transparent; color: #000000; font-family: serif; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">Ejemplo: Punteros5 **: Programa que muestra la importancia de la especificación en la declaración de un puntero del tipo del objeto al que se apunta.

<span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;"><span style="background-color: #ffffff; color: #0000ff; display: block; font-family: serif; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">3.- Operaciones con punteros. <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">**Ejemplo:** **<span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">Puntero6: **Muestra las operaciones de asignación y aritméticas que se pueden realizar con una variable de tipo puntero.

<span style="background-color: #ffffff; color: #0000ff; display: block; font-family: serif; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;"> 4.- Punteros y arrays unidimensionales**.** <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;"> <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">**Ejemplo: <span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">PunterosyArrays1. ** Programa que muestra los diversos mecanismos que existen para acceder a los elementos de un array: mediante los índices entre corchetes o utilizando el nombre del array como un puntero constante al primer valor del arrray.

<span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">**<span style="background-color: transparent; color: #000000; font-family: serif; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">Ejercicio resuelto: PunterosyArrays2. ** <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">A.**<span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">- **Construir un array llamado //<span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">edad // de n elementos que se introducen por teclado. <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">B.- Imprimir el array en pantalla, usando su nombre como puntero <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">C.- Encontrar el mayor y el menor elemento del array. Imprimir ambos valores, junto con su posición en el array. <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">D.- Calcular la media aritmética. <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">E.- Calcular la desviación típica: sqrt[ ∑(x[i]-media)^2/n] <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">F.- Construir, a partir del array //<span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">edad // otro llamado //<span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">nuevaedad // con los mismo elementos que edad, pero sin repetir. <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">Y un array llamado //<span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">frecuencia // que indique el número de veces que cada elemento de //<span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">nuevaedad // aparece en //<span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">edad //. <span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">G.- Imprime el resultado en pantalla.

<span style="background-color: transparent; color: #000000; display: block; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">**Ejemplo**: **<span style="background-color: transparent; color: #000000; font-family: 'Times New Roman','serif'; font-size: 16px; text-align: justify; text-decoration: none; vertical-align: baseline;">PunterosyArrays3: ** Si tenemos dos punteros que apuntan a elementos del mismo array, podemos realizar otras operaciones, además de la suma y resta de enteros