Вы находитесь на странице: 1из 20

UNIVERSIDAD DE EL SALVADOR FACULTAD DE INGENIERIA Y ARQUITECTURA ESCUELA DE INGENIERA DE SISTEMAS INFORMTICOS PROGRAMACIN I Ciclo II_2013

Gua de laboratorio No. 2 MODULARIDAD Objetivo: Aplicar la tcnica de Modularidad a la solucin de problemas y codificarlas en C. Contenido: Parte I : Ejercicio Resuelto, utilizando la Tcnica de Modularidad, hasta flujograma. Parte II : Ejercicios para completar, con la misma tcnica. Parte III : Programas con errores para ser corregidos. Parte IV : Ejercicios propuestos. Metodologa de trabajo: Semana 1:

La Parte I es para estudio del estudiante, por lo que debe ser leda antes del laboratorio. La Parte II de la gua, consta de ejercicios que el estudiante debe completar por su cuenta. El estudiante digita y depura dos de los ejercicios indicados por el instructor de la Parte III; programas que sern subidos al Aula Virtual al final de la sesin.. El instructor indica a los estudiantes la tarea para la prxima semana, que consiste en: - 2 ejercicios de la Parte III, a ser subidos en la prxima sesin (Semana 2) - 2 ejercicios de la Parte IV, hasta flujogramacin, en el cuaderno o a parte

Semana 2:

Subir los dos ejercicios de tarea de la Parte III, en los primeros 10 minutos de la sesin de laboratorio. El estudiante: codifica, digita y depura los ejercicios de la tarea de la parte IV.. Los programas deben de guardarse, compilarse y ejecutarse. Guardar como: g2_ej###.cpp en donde, ### es el nmero de ejercicio segn gua. Esta semana no se deja tarea

PARTE I Aplicacin de Modularidad pas a paso a un ejercicio. Revise el desarrollo del ejercicio identificando cada una de las etapas del Anlisis Estructurado. Realice las consultas necesarias a su instructor.
Ciclo II_2013

Ejercicio 1 Disee un flujograma que calcule el nmero de combinaciones nmeros enteros positivos n, x Sabiendo que: n>x n!___ x!(n-x)! posibles entre dos

Combinaciones =

I Planteamiento General Entrada de datos Salida de Datos

Nmero entero Nmero entero

Nmero de combinaciones posibles

II Top Down Cosas que hacer: 1. 2. 3. 4. 5. 6. Leer y validar los datos Calcular el factorial de n calcular el factorial de x Calcular el factorial n-x Calcular el nmero de combinaciones Imprimir el nmero de combinaciones (en modulo leer) (en mdulo factorial) (en modulo factorial) (en modulo factorial) (en el mdulo principal) (en el modulo principal)

Se utilizar un mdulo de lectura (que lee y valida un dato), el mdulo factorial (que calcula el factorial de un numero), el clculo de combinaciones y la impresin se harn en el mdulo principal. principal

leer

factorial

III Metodologa para resolver problemas aplicado a cada mdulo Mdulo factorial

Qu hace?: Calcula el factorial de un nmero.


Entrada de datos Salida de Datos

Recibe Ciclo II_2013

Retorna

Numero entero

El factorial del nmero

Cmo lo hace?:
Variables de Salida: No hay, no se imprime nada. Variables de Entrada: No hay, se recibe un nmero positivo. Parmetros:
Nombre dato Tipo Entero Descripcin Nmero entero.

Restriciones: No hay

Proceso: Dato es un nmero (entero y positivo) que se recibe del mdulo principal Si x=5; y f = x! Ahora si x=dato, f = 1*2*3*4*5 f= 1*2*3*4**dato Recuerde que 0!=1 y 1!=1 Note que tenemos un contador que va desde 1 hasta el valor que tenga dato.

Por lo tanto podemos escribirlo: f=1, f=f*i; en donde i va de 1 a dato, y como multiplicar por 1 no altera el nmero en s, lo podemos sacar del contador, quedndonos de la siguiente forma:

f=1 dato >= 2? Si: i=2, dato, 1 { f= f*i No: No hacer nada El valor final de f, se devuelve al mdulo principal //que representa el factorial de dato
Variables de Proceso:
Nombre f i Tipo Entero Entero Descripcin Representa el factorial de nmero entero; acumulador vi=2, vc=i, vf=? Representa el contador que cuenta de uno en uno desde 2 hasta un nmero especfico (dato)

Solucin:
Factorial ( dato )

f=1

dato>=2

Si
i = 2, dato,1

f=f*i

Retornar f

Ciclo II_2013

----------------------------------------------------------------------------------------------------------------------------------------

Mdulo leer

Qu hace?: Lee y valida un nmero entero positivo


Entrada de datos Salida de Datos

Numero entero

Envia el nmero entero

Cmo lo hace?:
Variables de Salida: No hay, retorna el nmero ledo Variables de Entrada: Nombre Tipo Descripcin num Entero Nmero entero. Restricciones: num > 0 Parmetros: No hay.

Proceso: leer num Mientras (num<=0) { error, .; leer num Variables de proceso: No hay Solucin:
Leer ( )
Digite un nmero entero positivo
1

num<=0

No

num

Error, intente de nuevo

num

Retornar num

Ciclo II_2013

---------------------------------------------------------------------------------------------------------------------------------------

Mdulo principal

Qu hace?:
combinaciones.

Invoca los mdulos de lectura y factorial, calcula e imprime el nmero de

Entrada de datos

Salida de Datos

Recibe Nmero entero Nmero entero

Nmero de combinaciones posibles Enva los datos de entrada

Cmo lo hace?:
Variables de Salida: Nombre Tipo Descripcin combi Entero Nmero de combinaciones posibles. Variables de Entrada: No hay, se reciben los valores de retorno de leer (2 valores) y de factorial (3 valores). Restricciones: No hay. Parmetros: Proceso:
n = leer ( ) x = leer ( ) Error, n = leer ( ) x = leer ( ) a = factorial ( n ) b = factorial ( x ) c = factorial ( n-x ) combi = a / (b * c) // Invoca leer

No hay.

// Validacin de datos

Mientras n<=x

// Calculo de n!

Variables de proceso: Nombre Tipo Descripcin n Entero Primer nmero para calcular el combinatorio x Entero Segundo nmero para calcular el combinatorio a Entero Factorial de n b Entero Factorial de x c Entero Factorial de n-x Ciclo II_2013

Solucin:
Inicio

*
a = factorial ( n )

n = leer ( )

x = leer ( )
Mientras (n<x)
Error, el 1er nmero debe ser mayor que el 2do.

b = factorial ( x)

c = factorial ( n-x ) combi = a / ( b*c)

*
El nmero de combinaciones posibles es: , combi

n = leer ( ) Fin x = leer ( )

PARTE II Los siguientes ejercicios no estn terminados, analizando todo lo que se le presenta complete lo que haga falta:
2. Disee un flujograma que calcule el nuevo salario de 15 empleados de una empresa, sabiendo que si el salario actual es menor que $1000.00 se le aumentar el 15% y en caso contrario, se le aumenta el 12%. (Faltan los subflujogramas de cada mdulo y el flujograma principal) nta el 12%. I Planteamiento General del Problema
Entrada de datos Salida de datos

Ciclo II_2013

Cantidad de empleados (15) Salario Actual Lmite de salario para aumento ($1000.00) Porcentajes de aumento (15% y 12%)

Nuevo Salario del empleado Nmero correlativo del empleado

II Diagrama Top-Down Cosas que hacer: 1. Leer y validar el salario de un empleado 2. Calcular el nuevo salario 3. Imprimir el correlativo y el nuevo salario de cada empleado

Se disear un mdulo para cada una de las tareas anteriores y el principal que las controla: principal

leer

calcular

imprimir

III Metodologa para resolver problemas a cada mdulo Mdulo Leer

Qu hace? Lee y valida el salario actual y lo retorna


Note que este mdulo es exactamente igual al mdulo leer del ejercicio anterior, solo cambia el tipo de dato. Entrada de datos Salida de datos

LEE Salario actual de un empleado

Retorna el salario actual validado

Cmo lo hace?
Variables de Salida: No hay; retorna el valor del salario actual. Variables de Entrada: .Nombre Tipo Descripcin sa Real Salario actual de un empleado Restricciones: . Parmetros: Ciclo II_2013 sa >0 No se utilizan.

Proceso:

Leer sa Mientras sa <= 0

Error; intente de nuevo Leer sa

Variables de Proceso: No hay Solucin: Dibuje la solucin -----------------------------------------------------------------------------------------------------------------------------------Mdulo Calcular Qu hace? Calcula el nuevo salario, tomando como base el salario actual. Devuelve el nuevo salario de un empleado Entrada de datos Salida de datos

Porcentajes de aumento (15% y 12%), lmite de salario (1000) Recibe el salario actual

Devuelve el nuevo salario

Cmo lo hace?
Variables de Salida: Variables de Entrada: Restricciones: Parmetros: .Nombre Tipo sal Real Proceso: sal<1000? si: nsal = sal + 0.15*sal no: nsal = sal + 0.12*sal Variables de Proceso: .Nombre Tipo Descripcin nsal Real Nuevo salario del empleado, es decir el salario de un empleado con su aumento Solucin: Dibuje el sub flujograma correspondiente. ---------------------------------------------------------------------------------------------------------------------------------------Mdulo Imprimir Ciclo II_2013 No hay; retorna el valor del nuevo salario No hay; recibe el salario actual No hay.

Descripcin Salario actual de un empleado

Qu hace? Imprime el nmero correlativo del vendedor y, su respectivo salario.


Entrada de datos Salida de datos

Recibe: El nmero correlativo Recibe el nuevo salario

Nmero correlativo Nuevo salario

Cmo lo hace?
Variables de Salida Nombre Tipo num Entero nu_s Real Descripcin Representa el nmero correlativo Representa el nuevo salario

Variables de Entrada: No hay. Recibe el nmero correlativo y el nuevo salario del empleado Restricciones: No hay. Parmetros: Nombre tipo num Entero nu_s Real Proceso:

Descripcin Numero correlativo que identifica al empleado El nuevo salario de un empleado. Slo imprime. No hay.

No hay.

Variables de Proceso:
Solucin: DIBJELA

...

---------------------------------------------------------------------------------------------------------------------------------------------------------------------Mdulo Principal

Qu hace?: Invoca los otros mdulos.


Enva parmetros, si es necesario, y recibe los valores de retorno, proceso que repite 15 veces. Entrada de datos Salida de datos

Recibe El salario actual El nuevo salario

Enva: El salario actual El nmero correlativo del vendedor El nuevo salario

Cmo lo hace?
Variables de Salida:
vendedor. No hay; enva los valores de salario actual, nmero correlativo y el nuevo salario del

Variables de Entrada: No hay; recibe los valores de retorno s1 (salario actual) y s2 (salario final). Ciclo II_2013

Restricciones: No hay Parmetros: No hay Proceso: No hay clculos, solamente invoca los otros mdulos para leer, calcular e imprimir; enva parmetros y recibe valores de retorno, proceso que se realiza 15 veces. DESDE i=1, 15, 1 s1 = leer() s2 = calcular(s1) imprimir (i, s2) //invoca mdulo leer //invoca mdulo calcular //invoca mdulo imprimir

Variables de Proceso: Nombre Tipo Descripcin i Enetro Contador de empleados s1 Real Salario actual de cada empleado. s2 Real Salario final o con aumento de cada empleado Solucin: Dibjela......

3. Disee un flujograma para calcular lo que hay que pagar por un conjunto de llamadas telefnicas. Por cada llamada se ingresa el tipo (internacional, nacional o local) y la duracin en minutos. El criterio para calcular el costo de cada llamada es el siguiente: Internacional 3 primeros minutos $7.56 Cada minuto adicional $3.03 Nacional 3 primeros minutos $1.20 $0.48 por minuto adicional Local $ 0.2 por minuto

El flujograma debe de imprimir el costo de cada llamada, la cantidad de llamadas realizadas y el total a pagar por todas las llamadas hechas. Usted debe aplicar la metodologa para resolver problemas a cada mdulo formulado.

I Entrada de datos

PLANTEAMIENTO GENERAL DEL PROBLEMA: Salida de Datos

Tipo de llamada Duracin, en minutos, de cada llamada

Costo de cada llamada Nmero de llamadas realizadas Total a pagar por todas las llamadas

Ciclo II_2013

10

II

TOP DOWN:

Cosas por hacer: 1. Leer y validar datos (tipo y duracin llamada) //modulos leer1 y leer2 2. Calcular el costo de cada llamada //modulo costo 3. Acumular los costos y contar el nmero de llamadas //modulo principal 4. Imprimir datos salida. //modulo salida

Se tienen dos mdulos de lectura, uno para el tipo de llamada y otro para la duracin de la llamada, ya que las restricciones son diferentes para cada tipo dato. Tendremos un mdulo costo que calcula el valor de cada llamada, recibe del principal el tipo de llamada y de leer2 la duracin de la llamada. La impresin se realiza en un mdulo aparte En el mdulo principal se controla el ciclo repetitivo, se acumulan los costos de todas y cada una de las llamadas y, se lleva el conteo del nmero de llamadas realizadas.

principal

leer1

costo

salida

leer2

III Metodologa para resolver problemas:

Qu hace cada mdulo?: Mdulo leer1: Mdulo leer2: Modulo costo: Modulo salida:
Lee y valida el tipo de llamada, retorna el tipo de llamada Lee y valida la duracin de una llamada, retorna la duracin. Invoca mdulo leer2, calcula el costo de una llamada, imprime este costo y lo retorna. Imprime el nmero total de llamadas y el costo de todas ellas.

Modulo principal: Invoca leer1, (recibe tipo de llamada), invoca costo (recibe el costo de
llamada); acumula costos de llamadas y cuenta las llamadas realizadas; por ltimo invoca modulo salida. Enva PARMETROS ACTUALES a costo y salida.

Ciclo II_2013

11

a) b)

Desarrolle cada mdulo. Disee otro Top Down y complete la tcnica.

PARTE III

Codificaciones de los problemas de las partes I y II

1. El siguiente programa corresponde al algoritmo para calcular el combinatorio presentado en las pginas: 2, 3, 4 ,5 y 6 . Digite, guardar (g2_ejer1.cpp) compile y depure los errores que haya cometido para que el programa funcione sin problemas.

#include <stdio.h> #include <conio.h> main() { int n, x, combi; long a,b, c; n = leer(); x = leer(); while(n<=x) { puts("error, e 1er nmero debe ser mayor que el 2d0."); n=leer(); x=leer(); } a= factorial(n); b= factorial(x); c= factorial(n-x); combi = a/(b*c); printf("\n \n El numero de combinaciones posibles es: \t %i", combi); getch(); return 0; } long factorial (int dato) { //calcula el factorial de un numero: dato long f=1; int i; if (dato>=2) for (i=2; i<=dato; i++) f*=i; return f; } int leer() { //lee un dato positivo y lo valida int num; puts("Digite un numero entero positivo"); scanf("%i", &num); while (num<=0) { Ciclo II_2013 puts("Error, intente de nuevo"); scanf("%i", &num); } return num; }

12

2. Programa del algoritmo que calcula el nuevo salario de los empleados presentado en las pginas de la 6 a la 10. Usted debe: Digitar, guardar (g2_ejer2.cpp), compilar y depurar los errores para que el programa sea ejecutado sin problemas: #include <stdio.h> #include <conio.h> float leer(); main() { int i; float s1, s2; for (i=1, i<=15, i++) { leer(); s2= calcular(s1); imprimir(i, s2); } getch(); return 0; } float leer() { float sa; puts("Digite el salario actual del empleado"); scanf("%f", &sa); while (sa<=0) { puts("error, intente de nuevo"); scanf("%f", &sa); } return sa; } void imprimir( int num, float nu_s); { printf("\n\n Empleado numero:\t %i", num); printf("\t Tiene como nuevo salario:\t$%.2f",nu_s); } float calcular( float sal) float nsal; if (sal<1000) Ciclo II_2013 13 nsal = sal + 0.15*sal; else nsal = sal + 0.12*sal; return;

3. Programa correspondiente al problema presentado en las pginas 10 y 11; contiene varios errores, que usted debe corregir; para ello digite, guarde (g2_ejer3.cpp), compile y depure el programa: #include <conio.h> #include <stdio.h> main() { int b, ti,ni=0; float ct; puts("Digite 1 si tiene datos"); scanf("%i",&b); while (b=1) { ni++; ti=leer1(); c=costo(ti); ct+=c puts("Digite 1 si tiene ms datos"); scanf("%i", &b); } imprimir(ct, ni), getch(); return 0; } int leer1() { int tipo; printf("\n\n Tipo de llamada:\n \t\t 1: internacional\n\t\t 2: nacional \n\t\t 3: local"); scanf("%i", &tipo); while ( tipo<1 || tipo>3) { puts("Error, intente de nuevo"); scanf("%i", tipo); } return tipo; } float costo(float t) { float costo1; int m; Ciclo II_2013 14 m=leer2();

switch (t) { case 1: if (m>3) costo1=3*7.59+3.03*(m-3); else costo1=3*7.59; break; case 2: if (m>3) costo1=3*1.20+1.20*(m-3); else costo1= 3*1.20; break; case 3: costo1=0.2; break; } printf("\n\n\n El costo de la llamada es \t$ ", costo1); getch(); return costo1; } void imprimir (float total, int n) { printf("\n\n\n El numero de llamadas realizadas es:\t %i",n); printf("\n Y se debe cancelar un total de: %i dolares", total); return; } int leer2() { int min; puts(Digite el tiempo de duracin de la llamada en minutos); scanf("%i", &min); while(min<=0) { puts("Error, intente de nuevo"); scanf("%i", &min); } return min; } 4. El siguiente programa determina si un ao es bisiesto o no, imprime el ao y el mensaje que corresponda (es bisiesto o no es bisiesto). Trabaja con aos de 1900 en adelante y puede probar con varios aos a conveniencia del usuario para lo cual se utiliza un ciclo while y una bandera. Guardarlo como: (g2_ejer4.cpp), compile y depure el programa: Mdulo principal: Lee y valida un ao (>1900) Invoca el mdulo Bisiesto, enva el ao ledo, recibe el resultado del mdulo. Ciclo II_2013 Imprime el ao y el mensaje adecuado Mdulo Bisiesto: Recibe el ao a trabajar Comprueba si el ao en cuestin es bisiesto (1) o no (0)

15

/* Este programa tiene como objetivo calcular si un ao es bisiesto o no utilizando modularidad o funciones */

#include <conio.h> #include <stdio.h> #include <stdlib.h> main() { int year, bisiesto, otro=1; system("cls"); while( otro !=1) { printf("\nIntroduzca el anyo: "); scanf("%i", &year); while(year < 1900); { printf("\nPor Favor vuelva a Introducir el ao: "); scanf("%i", &year); } Bisiesto = Bisiesto(year); // invocacion de la funcion system("cls"); if (bisiesto == 1) printf("\n\t El anyo %d es Bisiesto\n", year); else printf("\n\t El anyo %d No es Bisiesto\n\n\n", year); printf("\n\nquiere comprobar otro anyo? si digite 1 no digite 0\t"); scanf("%i", &otro); while(otro !=1 || otro 1=0) { puts("Error digite 1 o 0 as:"); puts("otro ao =1, no ms aos = 0); scanf("%i", &otro); } printf("\n\n\t Para finalizar presione cualquier tecla......") ; getch(); } // Definicion de Funciones int Bisiesto(int agno); {
/* Funcion que se encarga de calcular si un ao es bisiesto o no si el ao es bisiesto retornara 1; sino retornara 0 */

int bisi; if ((agno%4 1= 0) && (agno%100 == 0) || (agno%400 != 0)) bisi = 0; else bisi = 1; return; }

Ciclo II_2013

16

5. El siguiente programa convierte una longitud en metros a yardas o pies, segn requiera el usuario. (g2_ejer5.cpp), compile y depure el programa: Modulo principal:
Invoca el mdulo leer y recibe la cantidad de metros Invoca el modulo leer1 y recibe el tipo de conversin deseada Invoca el modulo yardas o pies, segn el tipo de conversin, recibe el resultado. Enva la cantidad de metros Invoca el mdulo imprimir, enva la cantidad de metros, el resultado de la conversin hecha y el tipo de conversin realizada Mdulo leer: Lee un nmero real (cantidad de metros a procesar) Valida el nmero ledo Retorna el nmero ledo y validado Mdulo leer1: Lee un nmero entero (representa el tipo de conversin a realizar) Valida el nmero ledo Retorna el nmero ledo y validado

Mdulo yardas: Recibe la cantidad de metros a convertir Convierte a yardas Retorna el nmero de yardas Mdulo Imprimir Recibe la cantidad de metros, el tipo de conversin y el resultado

Mdulo pies Recibe la cantidad de metros a convertir Convierte a pies Retorna el nmero de pies

/*este programa tiene convierte metros en yardas y yardas a pies*/ # include <conio.h> # include <stdio.h> main () //funcin principal { float cant_mts; int c; leer() ; c = leer1(); if (c==1) res = yardas(cant_mts); else res = pies(cant_mts); imprimir(cant_mts, res, c) ; printf("\n\n\t Para finalizar presione cualquier tecla......") ; getch() ; }

Ciclo II_2013

17

// modulo que lee y valida la cantidad de metros a convertir, de tipo real float leer() { float metros; printf("Introduzca la cantidad de metros ") ; scanf("%f", &metros); while (!(metros >= 0)) { printf("Por Favor Introduzca una cantidad positiva para los metros "); scanf("%f", &metros); } return metros; } //funcion que lee y valida el tipo de conversion int leer1() { int tipo; puts("digite el tipo de conversion desea:"); puts("1: metros a yardas"); puts("2: metros a pies"); scanf("%i", &tipo); while(tipo!=1 && tipo !=2) { puts("error digite 1 para convertir a yardas"); puts(" o 2 para obtener pies"); scanf("%i",&tipo); } return; } // funcion que convierte metros a yardas float yardas(m); { float yrd ; yrd = m / 1.09 ; return yrd ; } // funcion que convierte metros a pies void pies(float mt) { float ft ; ft = mt*3.28; return ft ; }

Ciclo II_2013

18

// funcin que imprime datos y resultados void imprime(float mts, float res, int tipo) { print("\n\n\n %.3f metros", mts); if (tipo = 1) printf("\t\t son equivalentes a %.3f yardas", resp); else printf("\t\t son equivalentes a %.3f pies", resp); return 0; }

PARTE IV Los siguientes ejercicios propuestos se deben resolver con la tcnica de Anlisis Estructurado (Modularidad)
Guarde sus archivos de la siguiente manera: g2_prob1, en el caso de que se trate del primer problema y as sucesivamente hasta el problema 15. 1. Disee un programa que imprima el resultado de la siguiente expresin: x = (a + b)2 3 2. 3. sabiendo que a y b son nmeros enteros.

Se tienen como datos la altura y la base de un rectngulo, disee un programa que calcule el permetro y la superficie del mismo. Dados el costo de un artculo vendido y la cantidad de dinero entregada por el cliente, calcule e imprima el cambio que debe entregrsele al mismo. Se desea calcular el pago de planilla de sueldo de 5 trabajadores, teniendo las horas trabajadas durante la semana y la clase de puesto que desempea cada trabajador, disee una solucin que permita desplegar los datos del empleado y su sueldo semanal; sabiendo que el trabajador clase 1 se le paga $ 7.00/hora, la clase 2 $ 8.50/hora, la clase 3 $ 10.00/hora y la clase 4 $ 12.50/hora; tambin se pide desplegar el total de la planilla. Una persona compr una estancia en un pas sudamericano. La extensin de la estancia est especificada en acres. Disee un programa que convierta la dimensin en acres a hectreas, si sabemos que: 1 acre = 4047 m2 1 hectrea = 10000 m2 Disee un programa que permita leer la estura en metros de varias personas, adems se conoce la edad de cada persona. Se requiere calcular la edad promedio y la estatura promedio. Adems se necesita conocer la edad de la persona mas alta y la estatura de la persona mas joven. Disee un programa calcule el resultado de la siguiente variables de tipo entero: num y v: si num=1 si num=2 si num=3 cualquier otro valor Ciclo II_2013 funcin val, que depende de dos val=100*v val=100v val=100/v val=0

4.

5.

6.

7.

19

8.

Tomando en cuenta la categora y el salario de un empleado, disee un programa que calcule el aumento correspondiente de acuerdo a la siguiente tabla:
Categora 1 2 3 4 Aumento 20 15 10 7

Debe imprimirse el nombre, la categora y el nuevo salario del empleado. 9. Disee un programa que permita a un profesor que califico 25 exmenes de sus alumnos y necesita calcular la nota promedio de todos ellos, la nota mas alta y cuentos aprobaron y reprobaron el examen. Adems se deber imprimir el nombre y la nota de cada estudiante. Disee un programa que teniendo un grupo de datos enteros y positivos, imprima cada uno de los nmeros y sus respectivos cubos. Un profesor tiene las notas de sus 30 alumnos y necesita conocer la nota promedio y el total de notas mayores de que el promedio. Disee un programa para ayudarle al profesor. Calcule el aumento de salarios para n empleados de una empresa, bajo el siguiente criterio: Si el salario es menor a $1000.oo aumento 12% Si el salario est comprendido Entre $1000.oo y $2500.o aumento 10% Si el sueldo es mayor a $2500.oo aumento 8% Disee un programa que reciba como entrada 24 nmeros reales que representan las temperaturas en todo un da (1 lectura por hora) y calcule: la temperatura promedio, nmero de datos menores que el promedio y nmero de datos mayores que 28. Disee un programa que permita calcular e imprimir el total a cobrar por una venta y el descuento total aplicado a una cantidad desconocida de ventas de productos realizadas en un almacn, sabiendo que si la venta es menor de $ 100 se le aplica un 10%, caso contrario se le aplica un 20%. En una empresa con varios empleados se necesita obtener cierta informacin. Por cada empleado se ingresan los siguientes datos: edad, sexo y salario. Disee un programa para calcular lo siguiente: Nmero de hombres Nmero de mujeres Nmero de mujeres que ganen ms de $1000.oo Nmero de hombres menores de 40 aos que ganan menos de $1000.oo Nmero de empleados mayores de 50 aos.

10.

11.

12.

13.

14.

15.

Ciclo II_2013

20

Вам также может понравиться