martes, 22 de mayo de 2012

Ejercicios Caso


1- Introducir por el teclado o H e imprimir Varón o Hembra.


2- Elaborar un programa que realice la opcion seleccionada de acuerdo a lo siguiente:
a.- Area de triángulo
b.- Area de Cuadrado
c.- Area de Circulo
d.- Area de Rectángulo
3- Elaborar un programa que lea una letra y determine si es vocal o consonante. 


4-  En el juego para dos personas llamado "ROCA, PAPEL Y TIJERAS" cada jugador escoge ser "T", "R" o "P" respectivamente. El jugador se determina así: roca rompe tijeras, las tijeras cortan el papel, el papel cubre la roca, el juego es un empate si ambos jugadores eligen la misma opcion. Elaborar un programa para que determine cual jugador gana, la salida debe mostrarse de la siguiente forma: "T-R Roca rompe tijeras gana el jugador 2".


5- Mostrar el signo zodiacal de una persona. Para ello el usuario debe introducir únicamente el día y el mes de nacimiento y el programa determinará inmediatamente el signo zodiacal de la persona


6- De la galería de productos, el usuario introducirá el código y el número de unidades
del producto que desea comprar. El programa determinará el total a pagar, como una
factura.

Estructura Caso


Esta se usa como sustituto en algunos casos del si anidado , por ser mas
practico al aplicarlo en la evaluación de algunas condiciones.

Sintaxis

  caso variable 
 valor1, valor2, valor3, … :  
  instrucciones 
 valor1, valor2, valor3, … :  
  instrucciones 
 .    
 .    
 [ sino : 
  instrucciones] 
 fin caso 

Los valores a evaluar , se separan por comas si hay varios, tal  como aparece en
la sintaxis valor1,valor2 etc, también se puede usar el sino que nos indica, que
en caso de no seleccionar ninguna de las instrucciones anteriores se ejecutan.

Ejemplo sobre la aplicación de la estructura caso 


caracter zona
cadena[25] nombre
real ventas , comis , ihss, tp
inicio
escriba "Ingresar el nombre del empleado "
lea nombre
escriba "Ingresar las ventas del empleado "
lea ventas
escriba "Ingresar la zona de trabajo "
lea zona
caso Zona
‘a’,’A’ : comis 0.06 * ventas
‘b’,’B’ : comis 0.08 * ventas
‘c’,’C’ : comis 0.09 * ventas
sino :
comis 0
fin caso
si comis > 2400 entonces
ihss 84
sino
ihss 0.035*comis
fin si
tp comis - ihss
Escriba " Comsión ganada " , comis
llamar nueva_linea
Escriba " Segudo Social " , ihss
llamar nueva_linea
Escriba "Total a pagar " , tp
llamar nueva_linea
fin

miércoles, 9 de mayo de 2012

Ejercicios Ciclos


1.- Realice un algoritmo que permita calcular y dar como salida el promedio general de una sección, tomando en cuenta que esta compuesta por 25 estudiantes y que se tiene la nota definitiva de cada uno de ellos.

2.- Sean N estudiantes. Hacer un algoritmo que lea las cuatro notas de cada estudiante e imprima la nota definitiva de cada uno, sabiendo que la nota definitiva es igual a la suma de cuatro notas multiplicada por cien, divididas entre 4 y al resultado se le suma uno.

3.- 3.- Dado un grupo de 75 Números (Diferentes a Cero), realice un algoritmo que permita determinar y dar como salida lo siguiente:
* Número Mayor y número menor encontrado en el grupo
* Cantidad de Números Mayores a 150
* Cantidad de Números Negativos Encontrados
* Promedio de los Positivos Encontrados.

4.- Dada La C.I., Nombre y la Nota Definitiva de 5 Materias de cada estudiante pertenecientes a un grupo de 35; realice un algoritmo que permita calcular y dar como salida el promedio de notas de cada estudiante.

6.- CANTV Posee dos tipos de clientes: Residencial y Empresarial, realice un algoritmo que permita procesar “n” cantidad de clientes teniendo como datos por C/U. de ellos: Código del Cliente, Tipo de Cliente, Lectura Actual, Lectura Anterior; Calculando y dando como salida la cantidad de Impulsos consumidos y el neto a pagar por cada cliente.
Los Impulsos se cobran a razón de:
Residencial 25 Pesos.
Empresarial 35 Pesos.
Nota: Cant. De Imp = L. Actual – L. Anterior.

7.- Una Ferretería vende dos tipos de Cables, Cable Tipo A (200 Pesos. MT) y Cable Tipo B (300 pesos. MT ); realice un algoritmo que teniendo como datos por cada cliente su nombre, tipo de cable a comprar y cantidad de metros requeridos, calcule y de cómo salida el nombre y el neto a pagar por cada cliente, tomando en cuenta que existe un grupo indeterminado de ellos y que la empresa da una rebaja del 10% por cada compra que exceda de los 100 MT de cable de cualquier tipo

8.- Se toman los Mismos datos del 7 con la diferencia que se da la rebaja del 10% si se compran mas de 100 Mts de Cable tipo A y el 20 % si se compran mas de 100 Mts de Cable Tipo B.



martes, 8 de mayo de 2012

Ejercicios Condicionales


1. Se desea escribir un algoritmo que pida la altura de una persona, si la altura es menor o igual a 150 cm envíe el mensaje: “Persona de altura baja”; si la altura está entre 151 y 170 escriba el mensaje: “Persona de altura media” y si la altura es mayor al 171 escriba el mensaje: “Persona alta”.

2. Hacer un algoritmo que lea los nombres y edades de dos personas e imprima cual de ellas tiene más edad.

3. En una Granja existen N conejos, N1 blancos y N2 negros. Se venden X negros y Y blancos.
Hacer un algoritmo que:
a) Imprima la cantidad de conejos vendida
b) Si P1 es el precio de venta de los conejos blancos y P2 es el precio de venta de los conejos negros, imprima el monto total de la venta.
c) Imprima el color de los conejos que se vendieron mas.

4. Elaborar un algoritmo que lea el importe bruto de una factura y determine el importe neto según los siguientes criterios:
· Importe bruto menor de 20.000 -> sin descuento
· Importe bruto mayor de 20.000 -> 15% de descuento

5. Un decreto presidencial permite el aumento del 10% a aquellos trabajadores que ganen el sueldo mínimo. Hacer un algoritmo que lea el sueldo de un trabajador e imprima el sueldo a devengar, después del decreto.

Instrucciones condicionales

Instrucción si: 

 Sintaxis 
 si condición entonces 
  instrucciones 
 fin si 

ó 
   
 si condición entonces 
  instrucciones 
 sino 
  instrucciones 
 fin si


Ejemplo sobre decisiones:

Ingresar un numero y si el numero es mayor a 100 , escribir en la pantalla el 
numero es mayor a 100. 

Entero num
Inicio
       Escriba “Ingresar un numero” 
       Lea num
       Si num > 100 entonces
               Escriba “El numero es mayor a 100”
       Fin Si
Fin

En programa solo imprimirá que el número fue mayor a 100 cuando cumpla con 
la condición num > 100   sino  cumple con la condición no hace nada. 

Ejemplo sobre decisiones:

Ingresar el nombre del empleado, las horas trabajadas, luego Calcular pago 
bruto (50 pesos la hora ) SS y total a pagar , presentar los resultado del programa 
Nota : el seguro social es 84 si el sueldo es mayor 2400 sino es el 3.5% del 
sueldo del empleado

Entero horas
Real Pbruto,ihss,tp
Cadena [25] nombre
Inicio
        Escriba “Ingresar el nombre”
        Lea nombre
        Escriba “Ingresar las horas trabajadas”
        Lea horas
        Pbruto horas*50
       Si pbruto > 2400 entonces
              ss <- 84
       Sino
              ss <- 0.035*pbruto
       Fin si
       Tp pbruto-ss
       Escriba “Pago bruto ” , pbruto
       Llamar Nueva_linea
       Escriba “Seguro Social ” , ss
       Llamar Nueva_linea
       Escriba “Total a pagar ” , tp
       Llamar Nueva_linea
Fin

En este programa se uso en el calculo del ss una decisión que tiene dos 
salidas una cuando se cumple la condición que es el entonces y la otra cuando 
no se cumple la condición que es el sino, ahora esto nos ayuda a que nuestros 
programas puedan tomar una decisión cuando la condición se cumple  y otra 
cuando no se cumple.

Ahora en el siguiente ejercicio que se presenta , ya no hay dos soluciones a la 
condición hay tres soluciones , cuando sucede esto se usan condiciones 
anidadas. 

Sintaxis de una condición anidada : 


Si condición 1 entonces
        Instrucciones
                  Sino si condición 2 entonces
                         Instrucciones
                                  Sino si condición 2 entonces
                                            Instrucciones
                                                  Sino
                                                         Instrucciones
                                                  Fin si
                                  Fin si
                  Fin si

Ejemplo  sobre decisiones anidadas:


Ingresar el nombre del empleado, la zona de trabajo , las ventas del empleado , 
luego calcular su comisión en base a un porcentaje basado en la  zona de 
trabajo, luego determinar el SS y el total a pagar , presentar los datos. 
Tabla para el caculo de la comisión 
Zona  Porcentaje de Comisión 
A   6% 
B   8% 
C   9% 

caracter zona
cadena[25] nombre
real ventas , comis , ss, tp
inicio
         escriba "Ingresar el nombre del empleado "
         lea nombre
         escriba "Ingresar las ventas del empleado "
         lea ventas
         escriba "Ingresar la zona de trabajo "
         lea zona
        si zona ='A' entonces
               comis <- 0.06 * ventas
               sino si zona='B' entonces
                       comis <- 0.08 * ventas
                              sino si zona='C' entonces
                                    comis <- 0.09 * ventas
                                           sino
                                                comis <- 0
                                            fin si
                              fin si
               fin si
         si comis > 2400 entonces
                  ss <- 84
         sino
                  ss <- 0.035*comis
         fin si
         tp <- comis - iss
         Escriba " Comsión ganada " , comis
         llamar nueva_linea
         Escriba " Segudo Social " , ihss
         llamar nueva_linea
         Escriba "Total a pagar " , tp
         llamar nueva_linea
fin

En este programa usamos decisiones anidadas para el calculo de la comisión 
del empleado , esto porque se tenían varias opciones de la cuales elegir . 
El ultimo sino donde la comisión es 0 se hace porque no estamos seguros de 
que la persona que opera el programa introduzca correctamente la zona , si se 
ingreso otra zona de las permitidas la comisión es cero.

Ciclo Mientras:

Sintaxis:

mientras condicion haga instrucciones... fin mientras


El ciclo mientras se utiliza cuando se quiere ejecutar repetidamente un bloque de instrucciones basado en una condición, el ciclo se repite mientras la condición se cumple.


Ejemplo: 

entero contador cadena[25] nombre inicio cantador<-0 mientras contador<10 haga escriba "ingrese el nombre" lea nombre contador<-contador+1 fin mientras fin



En este programa introducimos el concepto de contador , que es una variable 
que se incrementa su valor en 1 y de esta manera contamos cuantos nombres
se van ingresando para parar.
cuando ingresemos 10 , esto nos dice que la condición ya no se cumple
porque cuando el contador vale 10 la condición de contador < 10 ya no se
cumple porque es igual y el ciclo termina.

Ejemplo sobre el ciclo Mientras usando acumuladores:

Ingresar 10 números y al final presentar la suma de los números. Entero contador,suma,num Inicio Contador 0 Suma 0 Mientras contador<10 haga Escriba “Ingresar un numero” Lea num contador contador +1 Suma <- num+suma Fin mientras Escriba “Suma de los 10 números “, suma Fin
El ciclo recorre 10 veces y pide los 10 números, pero la línea 
suma <- suma + num, hace que la variable suma, incremente su
valor con el numero que se introduce en ese momento,a diferencia
del contador, un acumulador se incrementa con una variable , acumulando
su valor hasta que el ciclo termine , al final se presenta la suma, solo en 
ese momento se debe de presentar un acumulador, porque antes no 
reflejaría la suma de todos los números.

Siempre que usemos un contador o acumulador debemos darle un valor
inicial que generalmente será 0.