Anda di halaman 1dari 40

UNIVERSIDAD TECNOLOGICA NACIONAL

FACULTAD REGIONAL GENERAL PACHECO

TCNICO SUPERIOR EN PROGRAMACIN

PROGRAMACIN I
GUIA DE TRABAJOS PRACTICOS
PARTE 1

Cronograma Programacin I para Primer Parcial


Clase 1

Presentacin de la materia.
Repaso de:
- Ejercicios Bsicos (TP 1)
- Decisiones (TP 2)
- Ciclo FOR (TP 3)

Clase 2

Ciclo FOR. Ejercicios Avanzados (TP 3)


Ciclo WHILE. Ejercicios Bsicos. (TP 4)
Ciclo WHILE. Corte de Control. (TP 4)
Ciclo WHILE. Corte de Control. (TP 4)
Evaluacin (TP 1 al TP 4)

Clase 3
Clase 4
Clase 5

PAUTAS PARA MATERIA PROGRAMACION I


 La aprobacin de la materia se basar en la rendicin de dos exmenes parciales,
evaluaciones de seguimiento y un examen final
 Cada examen parcial tendr una sola recuperacin. Los recuperatorios se tomarn
durante los llamados a fecha de final, al final del cuatrimestre. No habr
recuperatorios durante la cursada.
 Los alumnos que no asistan, por el motivo que fuera, a alguno de los exmenes
parciales sern considerados desaprobados y debern rendir el recuperatorio
respectivo al final del cuatrimestre.
 El alumno que obtiene notas altas en ambos parciales y haya aprobado las
evaluaciones de seguimiento tendr posibilidades de promocionar su examen final.
La decisin final de la condicin de promocionar quedar a criterio del docente y su
evaluacin general del alumno.
 Los alumnos con 5 o ms inasistencias quedarn libres. Esto significa que deben
cursar la materia nuevamente en el cuatrimestre siguiente.

-2-

TRABAJO PRACTICO N 1 (EJERCICIOS BASICOS)


1) Hacer un programa que permita ingresar dos nmeros por teclado y que luego calcule y
emita la suma de ambos y la resta del segundo menos el primero. Se deben mostrar ambos
resultados por pantalla.
2) Hacer un programa que permita ingresar por teclado la cantidad de horas trabajadas en el
mes por un operario y luego el valor que se le paga por hora trabajada a ese operario. El
programa debe calcular y emitir por pantalla el sueldo que le corresponda.
3) Una concesionaria de autos paga a los vendedores un sueldo fijo de $ 5000.-, ms $ 500.de premio por cada auto vendido. Hacer un programa que permita ingresar por teclado la
cantidad de autos vendidos por un determinado vendedor y que luego calcule el sueldo total a
pagarle al mismo (Sueldo fijo + Comisin Total) y emitirlo por pantalla.
Atencin: El programa solamente debe solicitar un solo dato: la cantidad de autos vendidos.
4) Una farmacia hace el 15% de descuento sobre los precios de la lista oficial. Hacer un
programa que permita ingresar por teclado el precio de lista de un determinado artculo y la
cantidad de unidades compradas por un determinado cliente. Luego calcular e informar por
pantalla el total a pagar aplicando el descuento respectivo.
Por ejemplo: Precio del artculo: $50.-. Cantidad de Unidades: 2. Total a Pagar: $ 85.
5) Existe una unidad de medida llamada pulgada que se usa por ejemplo para medir el
tamao de la pantalla de un monitor. Una pulgada equivale aproximadamente a 2,5 cm.
a) Hacer un programa para ingresar por teclado una medida en cms y que calcule y emita por
pantalla el equivalente en pulgadas
Atencin: El programa solamente debe solicitar un solo dato: la cantidad de cms a convertir.
b) Hacer un programa para ingresar por teclado una medida en pulgadas y que calcule y emita
por pantalla el equivalente en cms.
Atencin: El programa solamente debe solicitar un solo dato: la cantidad de pulgadas a
convertir.
6) Hacer un programa para ingresar por teclado la cantidad de asientos disponibles en un
avin y la cantidad de pasajes vendidos (es decir la cantidad de asientos ocupados) y luego
calcular e informar el porcentaje de ocupacin del mismo.
Por ejemplo si el avin tiene 200 asientos disponibles y se vendieron 80 pasajes, el porcentaje
de ocupacin que se informar ser de un 40%.
7) Una maestra desea un programa para ingresar por teclado la cantidad de alumnos hombres
y alumnas mujeres de un curso y obtener el porcentaje respectivo para cada sexo.
Por ejemplo, si se ingresa 24 alumnos y 16 alumnas, obtendr como respuesta que en ese
curso el 60% son alumnos y el 40% son alumnas.
8) Un comercio vende tres marcas de alfajores distintas: Sabroso, Goloso y Apetitoso. El
dueo le pide a Ud., futuro programador, un programa para que se pueda ingresar por teclado
la cantidad de alfajores vendidos durante el da para cada una de las tres marcas en el orden
anteriormente indicado (es decir se ingresan 3 datos distintos) y luego se calcule e informe el
porcentaje de ventas para cada una de ellas.
-3-

Por ejemplo: se ingresa 100, 25 y 75 como cantidades vendidas entonces el programa


calcular e informar Sabroso: 50%, Goloso 12,50% y Apetitoso 37,50%.
9) Hacer un programa para que se ingrese por teclado el importe de una venta sin el IVA
incluido (se lo llama Importe Neto), luego calcular y mostrar por pantalla el importe total con
el IVA del 21% incluido (se lo llama Importe Bruto). Por ejemplo: se ingresa 80 como
Importe Neto, se calcular y mostrar entonces 96,80 como Importe Bruto.
10) Hacer un programa para que se ingrese por teclado el importe de una venta con el IVA
incluido (se lo llama Importe Bruto), luego calcular y mostrar por pantalla el importe total sin
el IVA del 21% incluido (se lo llama Importe Neto).
Por ejemplo: se ingresa 169,40 como Importe Bruto, se calcular y mostrar entonces 140
como Importe Neto.
11) Hacer un programa para que se ingrese por teclado el importe bruto de una venta y el
importe neto de una venta. El importe bruto es el importe original y el importe neto es el
importe que el cliente pag luego de que el vendedor le aplicara algn descuento. El programa
debe luego mostrar por pantalla que porcentaje de descuento fue aplicado a la venta. Por
ejemplo si se ingresa importe bruto 120 e importe neto 108, se emitir un cartel indicando que
el descuento aplicado fue del 10%. Tener en cuenta que el importe neto es siempre menor o
igual al importe bruto, nunca mayor.
12) Un negocio de venta de alfajores le pide a Ud., futuro programador, que le desarrolle un
programa teniendo en cuenta las siguientes condiciones:
La caja de 12 alfajores se vende a $50.- y cada alfajor suelto a $ 5. El programa debe solicitar
al usuario cuantos alfajores compr un cliente y luego calcular el importe a pagar por el
mismo.
Tener en cuenta que por cada 12 alfajores se debe calcular una caja, y el excedente se calcula
como suelto.
Por ejemplo: Si la cantidad ingresada son 15 alfajores, el programa calcular: 1 caja y 3
sueltos, es decir $50.- + $5 x 3 = $ 65.
Si cantidad ingresada son 28 alfajores, el programa calcular: 2 cajas y 4 sueltos, es decir
$100.- + $5 x 4 = $ 120.-.
Si cantidad ingresada son 8 alfajores, el programa calcular: 0 cajas y 8 sueltos, es decir
$5 x 8 = $ 40.-.
13) Hacer un programa que solicite por teclado que se ingresen dos nmeros y luego
guardarlos en dos variables distintas. A continuacin se deben intercambiar mutuamente los
valores en ambas variables y mostrarlos por pantalla.
Por ejemplo: Suponiendo que se ingresan 3 y 8 como valores y que la variables usadas son A
y B, entonces A=3 y B=8, pero luego debe quedar A=8 y B=3.
Nota 1: No se deben efectuar operaciones aritmticas (suma, resta, etc.) de ningn tipo.
Nota 2: Los valores 3 y 8 y los nombres A y B son solamente para ejemplificar, no debe hacer
un programa para ingresar solamente esos valores, debe ser genrico.
14) Hacer un programa para que el usuario ingrese la hora, minutos y segundos de un
momento del da y se emita por pantalla la cantidad de segundos transcurridos desde la
medianoche. (hora 00:00:00).

-4-

15) Hacer un programa para convertir grados Celsius a grados Fahrenheit. Para efectuar el
clculo tener en cuenta que 0 grados Celsius equivalen a 32 grados Fahrenheit, y que cada
grado Celsius equivale a 1,8 grados Fahrenheit. Por ejemplo 10 grados Celsius, equivalen a 32
+ 1,8 * 10 = 50 grados Fahrenheit. Arme usted mismo la frmula a partir del clculo del
ejemplo anterior.

-5-

Trabajo Prctico 1
Ejercicios Resueltos
Ejercicio 2

Ejercicio 5a)

Ejercicio 7
Se puede resolver de 2 maneras

Ejercicio 10

-6-

Ejercicio 12

Ejercicio 13
Se puede resolver de 2 maneras

-7-

TRABAJO PRACTICO N 2 (DECISION)


1) Hacer un programa para ingresar por teclado dos nmeros; si son iguales emitir por
pantalla un cartel aclaratorio que diga SON IGUALES, caso contrario no emitir nada.
2) Hacer un programa para ingresar por teclado un nmero y luego emitir por pantalla un
cartel aclaratorio indicando si el mismo es positivo, negativo o cero.
3) Hacer un programa para ingresar por teclado dos nmeros y luego calcular y emitir:
- la suma: si el primero es mayor que el segundo.
- la diferencia: si el primero es menor que el segundo (restarle al segundo el primero)
- el producto: si ambos son iguales.
En cualquiera de los casos, el programa calcular y emitir solo uno de los tres valores.
Se sugiere resolverlo de dos maneras:
a) Emitiendo el resultado solamente.
b) Emitiendo el resultado junto con un cartel aclaratorio, por ejemplo: La suma es: 10 El
producto es 21.
4) Hacer un programa para ingresar por teclado dos nmeros y luego informar por pantalla
con un cartel aclaratorio si el primer nmero es mltiplo del segundo (que es lo mismo que
decir que el segundo es divisor del primero).
5) Hacer un programa para ingresar por teclado un nmero y luego informar por pantalla con
un cartel aclaratorio si el mismo es par o impar.
6) Hacer un programa para ingresar por teclado dos nmeros. Si el segundo nmero es
distinto de cero, calcular y emitir por pantalla el cociente del primero sobre el segundo, sino
emitir un cartel que diga Divisor Nulo, no se puede efectuar la operacin. (Tener en cuenta
que la divisin por cero es una operacin invlida que no puede ejecutarse)
7) Hacer un programa para ingresar por teclado dos nmeros y luego informar por pantalla la
diferencia absoluta entre ambos.
Por ejemplo:
Si se ingresan 3 y 8, se emite 5.
Si se ingresan 8 y 3, se emite 5.
Si se ingresan -3 y 9, se emite 12.
Si se ingresan -12 y -1, se emite 11.
8) Un negocio de perfumera efecta descuentos en sus ventas segn el importe de stas, con
la siguiente escala:
- Si el importe es menor a $100 corresponde un descuento del 5%
- Si el importe es de entre $100 (inclusive) y hasta $500 (inclusive) corresponde un
descuento del 10%
- Si el importe es mayor a $500 corresponde un descuento del 15%
-8-

El dueo le solicit a Ud., futuro programador, un programa donde se deba ingresar el importe
original a pagar por el cliente y que luego se calcule e informe por pantalla el precio final con
el descuento que corresponda ya aplicado.
9) Hacer un programa para ingresar por teclado tres nmeros y luego determinar e informar
con una leyenda aclaratoria si los tres son iguales entre s, caso contrario no emitir nada.
Recordar la ley de transitividad de la igualdad: Si un nmero A es igual a otro nmero B y si
el nmero B es igual a otro nmero C, entonces se deduce que A tambin es igual a C.
10) Hacer un programa para ingresar por teclado tres nmeros y luego determinar e informar
con una leyenda aclaratoria si los tres son todos distintos entre s, caso contrario no emitir
nada.
Recordar que la ley de transitividad de la igualdad no se cumple para la desigualdad: Si un
nmero A es distinto de otro nmero B y si el nmero B es distinto de otro nmero C,
entonces no se deduce que A sea distinto de C. Por ejemplo A=3, B=5 y C=3.
11) Hacer un programa para ingresar por teclado la longitud de los tres lados de un tringulo,
luego se pide determinar e informar con un cartel aclaratorio que tipo de tringulo es:
- Equiltero: si los tres lados son iguales
- Issceles: si dos de los tres lados son iguales
- Escaleno: si los tres lados son distintos entre s
12) Hacer un programa para ingresar por teclado tres nmeros y luego determinar e informar
el mximo de ellos.
13) Hacer un programa para ingresar por teclado cinco nmeros y luego determinar e informar
el mximo de ellos.
14) Hacer un programa para poder ingresar por teclado cinco nmeros y luego determinar e
informar cuantos de esos cinco nmeros son positivos.
15) Dados tres nmeros enteros y distintos que se ingresan por teclado informarlos ordenados
de menor a mayor. Por ejemplo si se ingresa 4,-3,7, se debe mostrar -3,4,7.
16) Hacer un programa para ingresar por teclado las cuatro notas de los exmenes parciales
obtenidas por un alumno en una determinada materia y luego emitir el cartel aclaratorio que
corresponda, de acuerdo a las siguientes condiciones:
- Promociona, si obtuvo en los cuatro exmenes nota 7 o ms.
- Rinde examen final, si obtuvo nota 4 o ms en por lo menos tres exmenes.
- Recupera Parciales, si obtuvo nota 4 o ms en por lo menos uno de los exmenes.
- Recursa la materia, si no aprob ningn examen parcial.
El programa de emitir UNO SOLO de los carteles anteriores.
17) Hacer un programa para ingresar por teclado cuatro nmeros. Si los valores que se
ingresaran estn ordenados en forma creciente, emitir el mensaje Conjunto Ordenado, caso
contrario emitir el mensaje: Conjunto Desordenado.
Por ejemplo, si los nmeros que se ingresan son 8,10, 12 y 14, entonces estn ordenados.
-9-

Por ejemplo, si los nmeros que se ingresan son 8,12, 12 y 14, entonces estn ordenados.
Pero si los nmeros que se ingresan son 10,8,12 y 14, los mismos estn desordenados.
18) Hacer un programa para leer tres nmeros diferentes y determinar e informar el nmero
del medio, es decir el que no es ni mayor ni menor. Suponer que los 3 nmeros ingresados son
siempre distintos. Ejemplo, si se ingresan 6, 10, 8, se emitir 6.
19) Un negocio vende distintos artculos identificados por un cdigo entre 1 y 4. Los precios
de los artculos y las condiciones de venta son las siguientes:
- Artculos con cdigo 1: $ 10 por unidad
- Artculos con cdigo 2: $ 7 pesos por unidad y $ 65 la caja con 10 unidades.
- Artculos con cdigo 3: $ 3 pesos por unidad, si la compra es por ms de 10 unidades
se
aplica un 10% de descuento sobre el total de la compra.
- Artculos con cdigo 4: $ 1 peso por unidad
Hacer un programa para ingresar por teclado: el cdigo del artculo, la cantidad vendida y
luego se pide calcular e informar el importe a pagar por el cliente.
En el programa se ingresa un solo cdigo de artculo y una sola cantidad en cada ejecucin.

20) Una empresa de electricidad cobra el servicio a sus clientes de acuerdo a la siguiente
escala:
$ 0,10 por kilovatio por los primeros 100 kilovatios de consumo.
$ 0,12 por kilovatio por el consumo de 101 a 200 kilovatios.
$ 0,15 por kilovatio por el consumo de 201 kilovatios en adelante.
Hacer un programa para que dado el consumo en kilovatios de un determinado cliente, el
programa calcule e informe el total a pagar por el mismo.
Ejemplo 1: Si se ingresa un consumo de 55 kilovatios, entonces el programa calcular:
$ 0,10 x 55= $ 5,50
Ejemplo 2: Si se ingresa un consumo de 125 kilovatios, entonces el programa calcular:
$ 0,10 x 100 + $ 0,12 x 25=$ 13
Ejemplo 3: Si se ingresa un consumo de 250 kilovatios, entonces el programa calcular:
$ 0,10 x 100 + $ 0,12 x 100 + $ 0,15 x 50 = $ 29,50.
21) Una empresa de venta de boletos de micros tiene distintas tarifas segn el destino, servicio
(comn o diferencial) y compaa elegida por el pasajero. La siguiente tabla indica los precios
a pagar por el servicio comn por pasajero:

Compaa
1
2
3

Destino 1
$ 200.$ 220.$ 240.-

Destino 2
$ 150.$ 165.$ 180.-

Destino 3
$ 300.$ 330.$ 360.-

El servicio diferencial cuesta un 20% ms.


Adems, si el pasajero compra 5 o ms pasajes juntos se ofrece un descuento del 15%.
- 10 -

El dueo de la empresa le solicit a Ud., futuro programador, un programa para ingresar los
siguientes datos por cada venta:
-

Nmero de Destino (1 a 3)
Compaa (1, 2, 3)
Cantidad de pasajes solicitados por el pasajero
Servicio (1= comn, 2= diferencial )

El programa slo permite ingresar una venta por vez y calcula y emite el importe neto a pagar.

- 11 -

Trabajo Prctico 2
Ejercicios Resueltos
Ejercicio 1

Ejercicio 5
Se puede resolver de 2 maneras

Ejercicio 7

- 12 -

Ejercicio 10
Solucin 1

Ejercicio 10
Solucin 2

- 13 -

Ejercicio 13
MAX
N2

N2>MAX
SI
NO
MAX=N2

Igual para N3
Igual para N4
N5

N5>MAX
SI
NO
MAX=N5

MAX

- 14 -

Ejercicio 16
C7=C4=C=0
N1, N2, N3, N4

N1>=7
SI

NO

C7++
N1>=4
C4++

SI

NO

C4++

C++

IDEM N2, N3, N4

C7==4
SI
NO
"PROMOCIONA"

SI

C4>=3
NO

"EXAMEN FINAL"
C4>=1
SI
NO
"RECUPERA PARCIAL"

C==4
SI
NO
"RECURSA"

- 15 -

Ejercicio 17
Se puede resolver de 2 maneras

- 16 -

Ejercicio 18. Solucin 1

Ejercicio 18. Solucin 2


A, B, C

((A>B)& &(A<C))
||
((A<B)& &(A>C))

NO

SI
((B>A)& &(B<C))
||
((B<A)& &(B>C))
A

SI

NO

- 17 -

Ejercicio 20
KV

KV>200
SI

EXC200=KV-200
EXC100=100
EXC0=100

NO

KV>100
SI

NO

EXC200=0
EXC100=KV-100
EXC0=100

EXC200=0
EXC100=0
EXC0=KV

IMP=EXC200*0.15+EXC100*0.12+EXC0*0.10
IMP

- 18 -

TRABAJO PRACTICO N 3 (CICLO EXACTO)


1) Hacer un programa para mostrar por pantalla los nmeros del 1 al 10. El usuario no
ingresar NADA en este programa.
2) Hacer un programa para mostrar por pantalla los nmeros del 20 al 1 (en orden
decreciente). El usuario no ingresar NADA en este programa.
3) Hacer un programa para que el usuario ingrese un nmero positivo y que luego se
muestren por pantalla los nmeros entre el 1 y el nmero ingresado por el usuario.
Por ejemplo, si el usuario ingresa 15, se mostrarn los nmeros entre el 1 y el 15.
4) Hacer un programa para que el usuario ingrese dos nmeros y luego el programa muestre
por pantalla los nmeros entre el menor y el mayor de ambos.
Por ejemplo, si el usuario ingresa 3 y 15, se mostrarn los nmeros entre el 3 y el 15; y si el
usuario ingresa 25 y 8, se mostrarn los nmeros entre el 8 y el 25 (siempre se emiten en
orden creciente).
5) Hacer un programa para que el usuario ingrese por teclado 25 nmeros y que se vayan
informando uno por uno aquellos que son mayores o iguales a 5.
Atencin: Se pide que se informe cuales (y no cuantos) son mayores que 5.
6) Hacer un programa para que el usuario ingrese por teclado 25 nmeros y que se informe
luego cuantos de esos 25 son mayores o iguales a 5.
7) Hacer un programa para ingresar por teclado una lista de 10 nmeros, luego determinar e
informar cuantos son positivos, cuantos son negativos, y cuantos iguales a cero.
8) Hacer un programa para ingresar por teclado 20 nmeros, luego determinar e informar el
mximo. Suponer que los valores de la lista son todos positivos.
9) Hacer un programa para ingresar por teclado 10 nmeros enteros, luego determinar e
informar el mximo y su posicin. Suponer que los valores de la lista pueden ser todos
positivos, todos negativos, ceros, o cualquier combinacin.
10) Hacer un programa para ingresar por teclado 20 nmeros, luego determinar e informar el
mximo y el mnimo. Suponer que los valores de la lista pueden ser todos positivos, todos
negativos, ceros, o cualquier combinacin.
11) Hacer un programa para ingresar por teclado 20 nmeros, luego determinar e informar el
mximo de los negativos y el mnimo de los positivos. Resolverlo de dos maneras:
a) Suponer que en la lista hay nmeros positivos, negativos y ceros.
b) Suponer que en lista podra no haber nmeros positivos o podra no haber nmeros
negativos, en ese caso debe indicarse tal situacin con un cartel aclaratorio.
12) Hacer un programa para ingresar un valor que indica la cantidad de nmeros que
componen una lista y luego solicitar se ingresen esos N nmeros. Se pide informar cuantos
son positivos.
Por ejemplo, si se ingresa el valor 5 como cantidad de nmeros, entonces el programa debe
solicitar 5 nmeros y contar cuantos son positivos.
- 19 -

13) Hacer un programa para ingresar 5 nmeros, luego informar los 2 mayores valores
ingresados, aclarando cual es el mximo y cual el que le sigue.
Por ejemplo si la lista ingresada es 10, 8 ,12, 14 ,3 el resultado ser 14 y 12.
Atencin: si la lista ingresada es 14, 8 ,12, 14 ,3 el resultado ser 14 y 14.
Resolverlo de dos maneras:
a) Suponer que los 5 nmeros de la lista son todos positivos.
b) Suponer que los 5 nmeros pueden ser todos positivos, todos negativos, ceros o cualquier
combinacin de los anteriores.
14) Hacer un programa para ingresar por teclado un nmero superior o igual a 1 y luego
informar si el mismo es un nmero primo.
15) Hacer un programa para leer tres nmeros diferentes y determinar e informar el nmero
del medio, es decir el que no es ni mayor ni menor. Suponer que los 3 nmeros ingresados son
siempre distintos. Ejemplo, si se ingresan 6, 10, 8, se emitir 8.
16) Hacer un programa para ingresar una lista de 20 nmeros y luego informar si todos estn
ordenados en forma creciente.
Por ejemplo si la lista fuera:
1, 5, 7, 15,.......................120 se emitir un cartel que diga Conjunto Ordenado
3, 1, 8, 0, -3.......................15 se emitir un cartel que diga Conjunto No Ordenado
17) Dada una lista de 7 nmeros informar cual fue la ubicacin del primer y segundo nmero
impar ingresado.
Por ejemplo 8,4,5,6,9,5,7 se informa 3 y 5 posicin.
18) Dada una lista de 8 nmeros informar cual fue la ubicacin del primer y ltimo nmero
impar ingresado.
Por ejemplo 8,4,5,6,9,5,7,6 se informa 3 y 7 posicin.
19) Dada una lista de 8 nmeros informar el 1 par ingresado y el ltimo de los nros. primos.
Por ejemplo 7,4,5,6,9,13,10,6 se informa 4 y 13
Por ejemplo 9,7,5,21,9,13,15,6 se informa 6 y 13 (en este caso el primer par apareci
despus que el ltimo primo)
20) Hacer un programa para solicitar el ingreso de 10 ternas de nmeros enteros positivos e ir
mostrando para cada una de las ternas cual es el mayor nmero.
21) Hacer un programa para ingresar por teclado una lista de 10 nmeros. Se pide contar e
informar la cantidad de pares positivos consecutivos cuya diferencia absoluta sea mayor que 5.
Ejemplo:
12, -3, 4, 16, 8, -3, -5, 8, 10, 16
En esta lista existen 3 pares que cumplen esa condicin: (4-16) (16-8) (10-16), por lo tanto el
programa emitir un 3 como resultado.
Se sugiere consultar el ejercicio 7 del TP 2 referido a diferencia absoluta.

22) Hacer un programa para ingresar por teclado el nombre, sueldo y la antigedad de los 30
empleados de una empresa. Cada registro est compuesto por los siguientes datos:
- 20 -

- Nmero del empleado


- Sueldo
- Antigedad
Se pide determinar e informar:
a) Cual es el nmero del empleado con mayor sueldo y cual es su antigedad.
b) Informar la antigedad promedio de los empleados con sueldo mayor a $3500.23) Se ingresan los datos con la produccin de los operarios de una empresa en el ltimo mes.
Cada registro contiene:
-

Nmero de operario (1 a 20)


Sector donde trabaja (1, 2, 3)
Total de piezas defectuosas
Total de piezas no defectuosas

Existe un total de 20 registros (uno para cada operario). Cada operario trabaja en alguno de los
tres sectores 1, 2 3.
Se pide determinar e informar:
a) Para cada uno de los 3 sectores el nmero del operario que obtuvo mayor cantidad de piezas
defectuosas. (se emitirn 3 resultados: los nmeros de operario para cada uno de los 3
sectores).
b) El sector cuyos empleados totalizaron mayor porcentaje de piezas defectuosas respecto al
total de piezas fabricadas en ese sector.
24) Se ingresan los datos de los 10 artculos que venda una empresa. Cada registro contiene:
- Nmero de artculo
- Precio Unitario
- Clase de artculo (a, b, c)
Se pide determinar e informar:
a) El nmero del artculo ms caro de la clase a. dem para clase b y c.
b) La clase (a, b c) cuyos artculos totalicen el mayor precio promedio. (Se debe
calcular el precio promedio por clase e informar cual de ellas es la que tiene mayor promedio)
25) Hacer un programa para ingresar una lista de 20 nmeros. Se pide luego determinar e
informar:
a) La cantidad de ternas de valores positivos consecutivos.
b) La cantidad de ternas de valores negativos consecutivos y ordenados en forma creciente.
Nota: si el nmero ingresado es cero, no se lo considera ni negativo ni positivo.
Por ejemplo, dada la siguiente lista de 12 nmeros:
10, 5, 4, 3, -8, -3, -1, 0, 3, 8, -5, 8
el programa detectar una terna de positivos consecutivos (10, 5, 4) y una terna de negativos
consecutivos ordenados (-8, -3, -1).
- 21 -

Trabajo Prctico 3
Ejercicios Resueltos
Ejercicio 5

Ejercicio 7

- 22 -

Ejercicio 8

Ejercicio 9

- 23 -

Ejercicio 13

- 24 -

Ejercicio 14

Ejercicio 15

- 25 -

Ejercicio 24

- 26 -

Ejercicio 25

- 27 -

TRABAJO PRACTICO N 4 (CICLO INEXACTO)


En los siguientes ejercicios debe usar ciclo inexacto para su resolucin, independientemente
de que algunos podran ser resueltos con ciclo exacto.
1) Hacer un programa para ingresar nmeros de a uno por vez, finalizando el ingreso cuando
se ingrese un valor cero. Listar por pantalla uno por uno los nmeros que sean mayores o
iguales al valor 7.
2) Hacer un programa para mostrar por pantalla los nmeros del 1 al 10. El usuario no
ingresar NADA en este programa.
3) Hacer un programa para mostrar por pantalla los nmeros del 20 al 1 (en orden
decreciente). El usuario no ingresar NADA en este programa.
4) Hacer un programa para que el usuario ingrese dos nmeros y luego el programa muestre
por pantalla los nmeros entre el menor y el mayor de ambos.
Por ejemplo, si el usuario ingresa 3 y 15, se mostrarn los nmeros entre el 3 y el 15; y si el
usuario ingresa 25 y 8, se mostrarn los nmeros entre el 8 y el 25. (siempre se emiten en
orden creciente)
5) Hacer un programa para ingresar una lista de 10 nmeros e informar cuantos de ellos son
positivos.
6) Hacer un programa para ingresar por teclado un nmero superior a 1 y luego informar si el
mismo es nmero primo.
7) Hacer un programa para ingresar una lista de nmeros que finaliza cuando se ingresa un
cero. Se pide determinar e informar el mximo de la lista y su posicin dentro de la misma.
Suponer que los nmeros pueden ser todos positivos, todos negativos o combinados.
8) Dada una lista de nmeros enteros todos distintos entre s y que finaliza con un cero,
determinar e informar con un cartel aclaratorio si los mismos estn ordenados de menor a
mayor.
Por ejemplo:
-3, 5, 8, 12, 15 ,0
2, 10, 3, 5, 6, 7, 11, 0

Se emite un cartel que diga Ordenados


Se emite un cartel que diga Desordenados

9) Dada una lista de nmeros enteros todos distintos entre s y que finaliza con un cero,
determinar e informar con un cartel aclaratorio si los nmeros positivos primos que aparezcan
en la misma estn ordenados de menor a mayor. Los nmeros positivos primos pueden no ser
consecutivos, pero s estar ordenados.
Por ejemplo:
4, 5, 7, 12, 13, 0
Se emite un cartel que diga Ordenados (5,7 y 13)
2, 10, 3, 5, 11, 7, 14, 0
Se emite un cartel que diga Desordenados (2, 3, 5, 11 y 7)

- 28 -

10) Dada una lista de nmeros enteros todos distintos entre s y que finaliza con un cero,
determinar e informar con un cartel aclaratorio si la suma de los dos primeros nmeros primos
es igual a la suma de los dos ltimos nmeros pares.
11) Hacer un programa para que dada una lista de nmeros que finaliza cuando se ingresa un
cero se informe cual fue la ubicacin del 1 y 2 nmero impar ingresado.
Por ejemplo 6, 2, 3, 10, 9, 4, 7, 0. Se informa 3 y 5 posicin.
12) Dada una lista de nmeros que finaliza cuando se ingresa un cero, se pide informar el 1
par ingresado y el ltimo de los nmeros primos.
Por ejemplo 7,4,5,6,9,13,10,6,0 se informa 4 y 13
Por ejemplo 9,7,5,21,9,13,15,6,0 se informa 6 y 13
En este ltimo caso el primer par apareci despus del ltimo primo.
13) Hacer un programa para ingresar por teclado dos sublotes compuestos ambos de nmeros
todos distintos de cero, finalizando cada sublote cuando se ingresa un cero. Por cada sublote
se pide obtener y emitir:
a) La cantidad de valores positivos (de no haber positivos, indicar con un cartel)
b) La cantidad de valores negativos (de no haber negativos, indicar con un cartel)
c) El mximo valor de cada sublote.
d) El mnimo valor de cada sublote.
14) Se dispone de un lote de registros con todos valores positivos, dividido en sublotes por
medio de registros que contienen un valor cero. Confeccionar un programa para:
a) Calcular el promedio de valores de cada sublote.
b) Determinar e informar el valor mnimo de todo el lote, indicando en que sublote se
encontr y su posicin relativa en el mismo.
c) El mayor de los promedios y a que sublote perteneca.
Todos los sublotes finalizan con valor cero, incluso el ltimo y para indicar el fin del lote se
coloc un registro con valor negativo.
15) Hacer un programa para ingresar por teclado 10 sublotes, compuesto por nmeros
ordenados de menor a mayor. El final de cada sublote se detecta al ingresar un nmero menor
a su anterior.
Se debe obtener y emitir:
a) Para cada uno de los sublotes la cantidad de nmeros primos que lo componen.
b) El mximo de cada una de los sublotes.
Ejemplo de cmo se conforman los sublotes:
-20, -5, 8, 2, 20, 35, 42, 12, 22, ...........
Lote 1
Lote 2
Lote 3

....80, 12, 24, 36, -5


Lote 10

- 29 -

16) Dada una lista de nmeros compuesta por 10 subgrupos y cada subgrupo separado del
siguiente por un cero, se pide determinar e informar:
a) Para cada uno de los subgrupos el mximo de los nmeros pares y el mximo de los
nmeros impares.
b) Para cada uno de los subgrupos el porcentaje de nmeros negativos y nmeros positivos.
c) Cuantos nmeros haba en total entre los 10 subgrupos, sin contar los ceros que separan a
cada subgrupo.
17) Una compaa de electricidad necesita calcular anualmente el consumo que ha registrado
cada uno de sus usuarios y el monto pagado por cada uno de ellos.
Para ello, tiene un lote de registros por cada uno de los usuarios con los siguientes datos:
- Zona (1 a 10)
- Nmero de cliente (4 nmeros no correlativos)
- Lectura del medidor para el mes anterior (kilovatios)
- Lectura del medidor para el mes actual (kilovatios)
El lote se encuentra agrupado (no ordenado) por zona y finaliza con un registro con zona igual
a cero.
Se pide generar un listado con el siguiente formato:
Zona: XX
Cantidad de Usuarios de la zona: XXX
Total Facturado en la zona: XXX
Zona: XX
Cantidad de Usuarios de la zona: XXX
Total Facturado en la zona: XXX
El precio es escalonado segn la siguiente escala:
$ 0,10 por kilovatio por los primeros 100 kilovatios de consumo.
$ 0,12 por kilovatio por el consumo de 101 a 200 kilovatios.
$ 0,15 por kilovatio por el consumo de 201 kilovatios en adelante.
Alguien que consume 250 kilovatios, debe pagar $ 0,10 x 100 + $ 0,12 x 100 + $ 0,15 x 50.
18) Hacer un programa para ingresar los valores de los pesos de distintas encomiendas que se
deben enviar a distintos clientes y que finaliza cuando se ingresa un peso negativo. Se deben
agrupar las encomiendas en camiones que pueden transportar hasta 200 kilos en total.
Por ejemplo: 10, 20, 140, 70, 100, 40, 10, 50, 80, 90, 30, 40, 50, -10.
Camin 1 Cam. 2 Cam. 3
Cam. 4
Cam. 5
Se pide determinar e informar:
a) El nmero de cada camin y peso total de encomiendas. (Camin 1: 170 kg, Camin 2: 170
kg)
b) El nmero de camin que transporta mayor cantidad de encomiendas. (En el ejemplo
anterior sera el Camin 3 con 4 encomiendas)
- 30 -

19) Se dispone de una lista de 10 grupos de nmeros enteros separados entre ellos por ceros.
Se pide determinar e informar:
a) El nmero de grupo con mayor porcentaje de nmeros impares positivos respecto al total de
nmeros que forman el grupo.
b) Para cada grupo el ltimo nmero primo y en que orden apareci en ese grupo, si en un
grupo no hubiera nmeros primos informarlo con un cartel aclaratorio.
c) Informar cuantos grupos estn formados por todos nmeros ordenados de mayor a menor.
20) Una empresa registr las ventas que realiz durante el mes anterior. Para cada venta se
tienen los siguientes datos:
-

Nmero de artculo (1 a 30)


Da (1 a 31)
Cantidad de artculos vendidos
Importe recaudado por las ventas en ese da

Este lote finaliza con un registro con nmero de artculo igual a cero.
Los registros estn agrupados (no ordenados) por nmero de artculo y hay un solo registro
por da y por nmero de artculo. En el lote no aparecen registros de los artculos que no se
vendieron durante alguno o ningn da del mes.
A partir de este lote se pide determinar e informar:
a) El nmero del artculo ms vendido en total considerando las ventas de la primera quincena
(da 1 al 15)
b) Para cada uno de los artculos informar la recaudacin total considerando todas las ventas
del mes.
c) Informar la quincena en la que se vendi mayor cantidad de artculos en total.
d) Informar el nmero de artculo del que menos cantidad se haya vendido en un da,
indicando adems que da fue.
21) Dada una lista de nmeros compuesta por 20 subgrupos y cada subgrupo separado del
siguiente por un cero, se pide determinar e informar:
a) La cantidad de subgrupos en los que se detecten un total de 4 o ms nmeros primos
consecutivos y ordenados en forma creciente. (se informa 1 resultado al final)
b) Para cada uno de los subgrupos en los que se haya detectado nmeros negativos, el mayor y
el segundo mayor de los mismos y en que posicin estaban dentro del subgrupo. En los
subgrupos sin negativos, informar Subgrupo sin negativos. (se informan 4 resultados por
cada subgrupo)
c) El mayor nmero primo de todos los subgrupos, informando adems en que subgrupo y en
que posicin del mismo fue detectado. (se informan 3 resultados al final)
22) Una empresa area registr los vuelos durante el mes pasado. La empresa cuenta con una
flota de 40 aviones y un total de 250 itinerarios. El lote finaliza con un registro con cdigo de
avin igual a cero. Cada registro contiene:
- Nmero de avin (Un numero entre 1000 y 2000, no correlativos)
- Nmero de itinerario efectuado (Un nmero entre 1 y 250)
- 31 -

- Da del vuelo (1 a 31)


- Cantidad de asientos vendidos
- Cantidad de asientos no vendidos
- Minutos de puntualidad (Positivo si lleg tarde, 0 si lleg en hora, Negativo si se
adelant)
- Marca del avin que efectu el vuelo (A=Airbus,B=Boeing,C=Carrier)
Los registros estn agrupados por nmero de avin. En el lote anterior no aparecen registros
de aquellos aviones que no efectuaron vuelos durante el mes. Cualquier avin puede efectuar
cualquier itinerario, es decir que no tienen una ruta fija. La compaa le pidi a Ud.,
Programador, un programa para determinar e informar.
a) La marca de avin que transport ms cantidad de pasajeros durante toda la primera
semana.
b) El nmero de avin que tuvo menor porcentaje de asientos ocupados respecto al total de
asientos a ocupar, considerando todos los vuelos que haya efectuado en el mes.
c) Para cada marca se desea conocer el avin que se atras menor cantidad de minutos en total
en el mes. (Debe haber tres resultados, uno por cada marca).
d) Informar el nmero de itinerario que haya sufrido mayor cantidad de minutos de atraso en
el mes, informando el nmero de avin y la marca del avin en el que se produjo tal atraso.
No se debe acumular, solo analizar cada vuelo del mes por separado.

- 32 -

Ejercicio 6

- 33 -

Ejercicio 8 Solucin 1

- 34 -

Ejercicio 8 Solucin 2

- 35 -

Ejercicio 11

- 36 -

Ejercicio 15

- 37 -

Ejercicio 18

- 38 -

Ejercicio 19

- 39 -

- 40 -

Anda mungkin juga menyukai