Informática aplicada I en el CIMAT - ago-dic 2013

Tarea num. 4

Para entregar el martes 10 de septiembre hasta las 23:59 hrs. vía mail a la dirección de correo marcelamq@cimat.mx.

Parte A: Desarrollar

  1. Un programa que calcula el promedio de un numero (arbitrario) de calificaciones, cada vez que se ejecute el programa. La forma más sencilla es que el programa pida primero al usuario, teclear el número de calificaciones, luego se ingresan las calificaciones y finalmente, se regresa como output el promedio de las mismas. RETO: ¿Cómo realizar este programa sin pedir el número de calificaciones a promediar?
  2. Un programa que despliegue un patrón cuadriculado con “*” utilizando a lo más tres enunciados printf. El patrón a desplegar debe de ser el siguiente:

       * * * * * * * *
        * * * * * * * *
       * * * * * * * *
        * * * * * * * *
       * * * * * * * *
        * * * * * * * *
       * * * * * * * *
        * * * * * * * *
       * * * * * * * *
        * * * * * * * *

Parte B:

  1. En un programa de C los variables a, x tienen asignados en algún momento ciertos valores y queremos asignar a la variable y el valor 7- (ax³/2). ¿Cuáles de los siguientes enunciados de C harán lo que queremos hacer?
  • y= 7-a*x*x*x/2;
  • y = (7-a*x*x*x)/2;
  • y= 7-a/2*x* x*x;
  • y = 7-(a/2)*x* x*x;
  • y = 7+a*x*x*x/(-2);
  • y = 7-(a*x*x*x)/2;

2. Declare el orden de cálculo de los operadores en cada uno de los enunciados de C siguientes, y muestre el valor de x después de que se ejecute cada uno de ellos.

  • x = 7 + 3 * 6 / 2 – 1;
  • x = 2 % 2 + 2 * 2 -2 / 2;
  • x = (3 * 9 * (3 + (9 * 3 / (3))));

Ejemplo: x = 1 + 3 * 8 / 2

Respuesta: se multiplica 3 por 8 (da 24), se divide entre 2 (da 12) y finalmente se suma 1 (da 13). Resultado final: x=13.

Parte C : realizar una prueba de escritorio al siguiente código, tal como se mostró en clase.

#include <stdio.h>
int main()
{
	int A,B,C,temp;

	printf("Ingresa tres enteros.\n");

	printf("El primero:\n");
	scanf("%i", &A);

	printf("El segundo:\n");
	scanf("%i", &B);

	printf("El tercero:\n");
	scanf("%i", &C);

	if(B>C)			//intercambiar B y C si B>C
	{
		temp=B;
		B=C;
		C=temp;
	}

	if(A>B)			//intercambiar A y B si A>B
	{
		temp=A;
		A=B;
		B=temp;
	}

	if(B>C)			//intercambiar B y C si B>C
	{
		temp=C;
		C=B;
		B=temp;
	}

    printf("Respuesta: %i, %i, %i\n", A,B,C);
    system("pause");
    return 0;
}

Se debe de entregar la tarea en un archivo comprimido (.zip o .rar) el cual debe de contener:

  • los archivos de códigos fuentes de la parte A (programa1.c, programa2.c) debidamente comentados.
  • un archivo tarea4.doc (o tarea4.pdf), donde reportas para cada ejercicio las salidas de los diferentes programas (puedes incluir impresiones de pantalla), comentarios y posibles mejoras, las respuestas a la parte B y a la parte C.