CI2621 COMPUTACIÓN II PRÁCTICAS Y LABORATORIOS ENE-MAR 08 LABORATORIO 2 (ASIGNACION 1) Funciones, parámetros, alcance y arreglos en Lenguaje C 1. OBJETIVOS: Reconocer y construir funciones, integrándolas en un programa. Identificar los parámetros por valor y referencia que deben ser pasados a las funciones para que éstas puedan realizar las tareas para las cuales fueron diseñadas. Diferenciar las variables locales, globales y externas, las automáticas y estáticas. Utilizar arreglos en programas de lenguaje C, conociendo la forma como se declaran, inicializan, se accede a sus valores y se pasan como parámetros a las funciones. 2. PRE-LABORATORIO Antes de entrar al Laboratorio 2 (martes de semana 3) usted debe RESOLVER el siguiente ejercicio: Escribir un programa que dada una matriz cuadrada M de números enteros y dimensión d, permita realizar cálculos y modificaciones a la misma, considerando los elementos de los anillos de la matriz (ver figura). En el siguiente ejemplo, aparece una matriz de dimensión 6 con sus tres anillos. Observe que los anillos de una matriz se enumeran de fuera hacia adentro. Notar también, que cada anillo está formado por dos filas y por dos columnas. Por ejemplo, para la matriz que se muestra en el ejemplo, si queremos sumar los elementos del anillo 1, el resultado sería 21. Para ello, se deberán realizar las siguientes actividades: a) Declarar una matriz cuadrada de DIM x DIM posiciones, donde DIM es una constante con valor 100. La matriz debe ser local en la función main. b) Escribir una función que se encargue de leer del teclado un número entero, validando que sea mayor que un límite mínimo dado y menor o igual que un límite máximo dado. Esta función servirá para leer y validar números enteros. El prototipo de la función es el siguiente: int LeerEntero(int min, int max); /* PARAMETROS: min corresponde al límite mínimo permitido para el entero max corresponde al límite máximo permitido para el entero PRE: min max POST: LeerEntero devuelve un entero min n max */ c) Escribir una función que lea los valores de la matriz. El prototipo de la función es el siguiente: void LeerMatriz(int matriz[][DIM],int d); /* PARAMETROS: matriz (entrada-salida) es el arreglo de enteros d (entrada) es la dimensión del arreglo PRE: d DIM POST: Se ha almacenado en matriz los valores leídos del teclado */ d) Escribir una función de nombre CuentaAnillos que calcule y retorne cuántos anillos tiene una matriz de dimensión d. Determinar cómo sería el prototipo y los comentarios correspondientes a parámetros, pre y postcondición. e) Escribir una función de nombre SumarAnillo que reciba una matriz, su dimensión y un número de anillo, y calcule y retorne la suma de los elementos de ese anillo. Determinar cómo sería el prototipo y los comentarios correspondientes a parámetros, pre y postcondición. f) Escribir el programa principal que realice lo siguiente: - Lea la dimensión del arreglo, usando la función LeerEntero. Lea los valores de la matriz, usando la función LeerMatriz Calcule y muestre en pantalla el número de anillos que tiene la matriz. Lea el número del anillo cuyos elementos se desean sumar, usando LeerEntero. Calcule y muestre en pantalla la suma de los elementos DEBE ENVIAR POR CORREO ELECTRÓNICO A gescuela@ldc.usb.ve, LABORATORIO EL ARCHIVO FUENTE DE SU PROGRAMA (anillos.c) ANTES DE INICIAR EL