taller de algoritmos

Post on 19-Nov-2014

48.824 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

ERIKA HERNANDEZ

Y

SEBASTIAN GONSALES

TALLER DE ALGORITMOS

1. Dada las horas trabajadas de una persona y el valor por hora.

Calcular su salario e imprimirlo.

ENTEROS horas, valor, salarioINICIOLEER hora, valorsalario<-hora*valorESCRIBIR salarioFIN

2. Diseñar el algoritmo (ordinograma y pseudocódigo) correspondiente a un programaque lea el valor correspondiente a una distancia en millas marinas y las escribaexpresadas en metros. Sabiendo que 1 milla marina equivale a 1852 metros.

INICIODATOS:CONSTANTESMILL_METR Numérico Entero = 1852VARIABLESDmillas Numérico EnteroDmetros Numérico EnteroALGORITMO:Escribir “Distancia en millas: ”Leer DmillasDmetros = Dmillas * MILL_METREscribir “Distancia en metros:”, DmetrosFIN

3. Diseñar el algoritmo (ordinograma y pseudocódigo) correspondiente a un

programaque pida por teclado dos números enteros y muestre su suma, resta,

multiplicación,división y el resto (módulo) de la

división. Si la operación no es conmutativa, también

se mostrará el resultado invirtiendo los operadores.

INICIODATOS:VARIABLESnum1 Numérico Enteronum2 Numérico EnteroALGORITMO:Leer num1, num2Escribir “n1 + n2 = “, num1+num2Escribir “n1 - n2 = “, num1-num2Escribir “n2 - n1 = “, num2-num1Escribir “n1 * n2 = “, num1*num2Escribir “n1 / n2 = “, num1/num2Escribir “n2 / n1 = “, num2/num1Escribir “n1 mod n2 = “, num1 mod num2Escribir “n2 mod n1 = “, num2 mod num1FIN

4. Diseñar el algoritmo (ordinograma y pseudocódigo) correspondiente a un programaque obtiene la última cifra de un número introducido.

INICIODATOS:VARIABLESnum Numérico EnteroALGORITMO:Escribir “Introduzca número:”Leer numEscribir “Última cifra: “, num mod 10FIN

5. Diseñar el algoritmo (ordinograma y pseudocódigo) correspondiente a un programa

que calcule el área y el perímetro de un triángulo rectángulo dada la

base y la altura.

INICIODATOS:VARIABLESbase Numérico Enteroaltura Numérico Enteroárea Numérico Realhipotenusa Numérico Realperímetro Numérico RealALGORITMO:Leer base, alturaárea = base * altura / 2hipotenusa = Raíz (base^2 + altura^2)perímetro = base + altura + hipotenusaEscribir “Área = “, áreaEscribir “Perímetro = “, perímetroFIN

6. Diseñar el algoritmo (ordinograma y pseudocódigo) correspondiente a un programaque tras introducir una medida expresada en centímetros la convierta en pulgadas (1pulgada = 2,54 centímetros)

INICIODATOS:CONSTANTESCM_PULG Numérico Real = 2.54VARIABLEScm Numérico Realpulgadas Numérico RealALGORITMO:Escribir “Valor en centímetros: “Leer cmpulgadas = cm / CM_PULGEscribir “Pulgadas: “, pulgadasFIN

7. Diseñar el algoritmo (ordinograma y pseudocódigo) correspondiente a un programaque exprese en horas, minutos y segundos un tiempo expresado en segundos.

INICIO DATOS: VARIABLES segundos Numérico Entero minutos Numérico Entero horas Numérico Entero ALGORITMO: Leer segundos horas = segundos / 3600 segundos = segundos mod 3600 minutos = segundos / 60 segundos = segundos mod 60 Escribir horas, “h “, minutos, “m “, segundos, “s” FIN

8. Suponiendo que una paella se puede cocinar exclusivamente con arroz y

gambas, yque para cada cuatro personas se utiliza medio kilo de arroz y un cuarto de kilo

degambas, escribir un programa que pida por pantalla el número de comensales

para lapaella, el precio por kilo de los

ingredientes y muestre las cantidades de los

ingredientes necesarios y el coste de la misma.

INICIO DATOS: VARIABLES comensales Numérico Entero precio arroz Numérico Real precio gambas Numérico Real cantaros Numérico Real cant_gambas Numérico Real coste gambas Numérico Real costearos Numérico Real coste total Numérico Real ALGORITMO: Leer comensales, precio arroz, precio gambas cantaros = comensales * 0.5 / 4 cant_gambas = comensales * 0.25 / 4 coste_arroz = cant_arroz * precio_arroz coste_gambas = cant_gambas * precio_gambas coste_total = coste_arroz + coste_gambas Escribir cant_arroz, cant_gambas, coste_arroz, coste_gambas, coste_total FIN

1. Inicio2. Declaración de Variables:N = 0, Promedio = 0, Acumula= 03. Leer N4. Mientras N <> 0 hacer5. Cuenta = Cuenta + 16. Acumula = Acumula + N7. Fin Mientras8. Promedio = Acumula/Cuenta9. Imprimir “Promedio:”; Promedio10. Fin

9. Desarrolle un algoritmo que permita calcular Promedio de Notas; finaliza cuando N = 0.

10. Desarrolle un algoritmo para la empresa Constructora Tecno vivir Casas C.A., que le permita calcular e imprimir la nómina para su cancelación a un total de 50 obreros calificados a quienes debe cancelar por horas trabajadas. La hora trabajada se pautó en 30.000 Bolívares.

1. Inicio2. Declaración de Variables:Numero_Obreros =50Numero_Hora_Trabajadas = 0Total_nomina = 03. Imprimir líneas de títulos de la nómina4. Leer Datos5. Mientras Numero_Obreros>06. Salario = Numero_Hora_Trabajada * 307. Total_nómina= Totalnómina + Salario8. Numero_Obreros = Numero_Obreros - 19. Imprimir Registro10. Leer Datos11. Fin_Mientras12. Imprimir “Total : “, Total_nómina13. FinEjercicios

11. Desarrolle un algoritmo que funcione como caja registradora,

1. Inicio 2. Declaración de Variables: Sub_total=0,Total = 0 3. Ingrese “Código de Producto y Precio:” 4. Almacenar Codigo_Producto, Precio 5. Imprimir líneas de títulos del recibo de pago 6. Mientras Código_Producto <> “ “ 7. Subtotal = Subtotal + Precio 8. Imprimir Codigo_Producto, Precio 9. Ingrese “Código de Producto y Precio:” 10. Fin Mientras 11. IVA = Subtotal * 0,15 12. Total = Subtotal + IVA 13. Imprimir “Sub Total : “, Subtotal 14. Imprimir “ IVA : “, IVA 15. Imprimir “Total: “, Total 16. Fin

12. Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las variables

A, B y Crespectivamente. El algoritmo debe imprimir cual es el mayor y cual es el menor. Recuerde

constatar quelos tres valores introducidos por el teclado sean valores distintos. Presente un mensaje

de alerta en caso deque se detecte la introducción de valores

iguales.

1. Inicio2. Inicializar las variables A, B y C3. Leer los tres valores4. Almacenar en las variables A, By C5. Si A > B y A > C Entonces6. Escribir A “Es el mayor”7. Sino8. Si B > A y B > C Entonces9. Escribir B “Es el mayor”10. Sino11. Escribir C “Es el mayor”12. Fin_Si13. Fin_Si14. Fin

13. Desarrolle un algoritmo que realice la sumatoria de los números enteros comprendidos entre el 1 y el 10,es decir, 1 + 2 + 3 + …. + 10.

1. Inicio2. Declaración de variables:N= 0, Suma = 03. Asignación Contador :N = N + 14. Asignación Acumulador:Suma = Suma + N5. Si N = 10 Entonces6. Escribir Suma7. De lo contrario, Repetir desde elpaso 38. Fin_Si8. Fin

14. Determinar la hipotenusa de un triángulo rectángulo conocidas las longitudes de sus

dos catetos. Desarrolle el algoritmo correspondiente.

1. Inicio2. Declaración de Variables: CatA= 0,CatB=03. Leer el valor de cada cateto4. Almacenarlo en la variable CatA yCatB5. Calcular el valor de Hip con laformula indicada6. Escribir el valor de la Hipotenusa7. Fin

15. Desarrolle un algoritmo que permita determinar el área y volumen de un cilindro

dado su radio (R) yAltura (H).

1. Inicio2. Declaración de variables: R = 0, H = 03. Leer el valor de Radio (R) y Altura (H)4. Calcular el Volumen aplicando la

fórmula5. Calcular el valor del área aplicando lafórmula respectiva6. Escribir el valor del Área y del Volumen7. Fin

16. Desarrolle un algoritmo que permita leer un valor cualquiera N y escriba si dicho

número es par o impar.

1. Inicio2. Declaración de variables: N3. Leer un número4. Asignarlo a la variable N5. Si el residuo de dividir a N entre 2 esigual a cero6. Si es Si: Entonces: Escribir “ Es par”7. Sino: Escribir “Es impar”8. Fin_Si9. Fin

17. Desarrolle un algoritmo que permita convertir calificaciones numéricas, según la

siguiente tabla:A = 19 y 20, B =16, 17 y 18, C = 13, 14 y 15, D

= 10, 11 y 12, E = 1 hasta el 9. Se asume que la nota está

comprendida entre 1 y 20.

1. Inicio 2. Declaración de variables: NuevaNota = Carácter 3. Leer registros hasta fin de archivo 4. Si Nota>=19 OR Nota<=20 Entonces 5. NuevaNota= “A” 6. Si no (De lo contrario) 7. Si Nota>=16 OR Nota<=18 Entonces 8. NuevaNota= “B” 9. Si no (De lo contrario) 10. Si Nota>=13 OR Nota<=15 Entonces 11. NuevaNota= “C” 12. Si no (De lo contrario) 13. Si Nota>=10 OR Nota<=12 Entonces 14. NuevaNota= “D” 15. Si no (De lo contrario) 16. Si Nota>=1 OR Nota<=9 Entonces 17. NuevaNota= “E” 18. Si no (De lo contrario) 19. Fin_Si

18. Desarrolle un algoritmo que permita leer dos números y

ordenarlos de menor a mayor, si es el caso.

1. Inicio2. Declaración de Variables:A = 0, B = 0, Temporal = 03. Leer A y B4. Si A<B Entonces5. Asignar a Temporal = B6. Asignar a B = A7. Asignar a A = Temporal8. Si no (De lo contrario)9. Fin_Si10 Escribir “Orden = “, A, B11. Fin

19. Desarrolle un algoritmo que permita leer un valor entero positivo

N y determinar si es primo o no.

1. Inicio2. Declaración de variables: J = 2, S =03. Leer N4. Mientras J<= N / 2 hacer5. Si N / J =06. S=S+17. J=J+18. Fin_Si9. Fin del ciclo mientras10. Si S = 0 Entonces11. Escribir N “es primo”12. Sino (De lo contrario)13. Escribir N “no es primo”14. Fin_Si15. Fin

20. Tanto el Pseudocódigo como el Diagrama de flujo presentan errores; encuéntrelos y corrijalos. Realice un

algoritmo que calcule el monto a pagar por el servicio de estacionamiento, teniendo en cuenta que por la

primera hora de estadía se tiene una tarifa de 1000 bolívares y las restantes tienen un costo de 600 bolívares. Se tiene como datos: hora de entrada, hora de salida (formato militar), iniciada una hora se contabiliza como hora total.

1. Inicio 2. Declaración de Variables HE = 0 (Hora Entrada) HS = 0 (Hora Salida) Pago = 0 3. Leer Datos: HE, HS 4. HoraEstadia = HS – HE 5. HoraFracción = HoraEstadia–HoraEstadia 6. Si HoraEstadia>= 1 Entonces 7. Si HoraFraccion >= 1 Entonces 8. HoraEstadia=HoraEstadia + 1 9. Fin_SI 10. Hora Restante = HoraEstadia – 1 11. Pago = 1000 + (HoraRestante * 600) 12. De lo contrario 13. Pago = 1000 14. Imprimir resultado 15. Fin

21. A un trabajador le pagan segun sus horas y una tarifa de pago por

horas. si la cantidad de horas trabajadas es mayor a 40 horas. la

tarifa se incrementa en un 50% para las horas extras. calcular el

salario del trabajador dadas las horas trabajadas y la tarifa.

variables: horas_trabajadas,tarifa,horas_extras,salario,tarifa_e

inicioleer: horas_trabajadas,tarifa si: horas_trabajadas <= 40 entonces salario <-- horas_trabajadas * tarifa si_notarifa_extra <-- tarifa + 0.50 * tarifa horas_extras <-- horas_trabajadas - 40 salario <-- horas_extras * tarifa_extra + 40 * tarifa fin_si imprimir: salario. fin

22. A un trabajador le descuentan de su sueldo el 10% si su sueldo es

menor o igual a 1000. por encima de 1000 y hasta 2000 el 5% del

adicional, y por encima de 2000 el 3% del adicional. calcular el

descuento y sueldo neto que recibe el trabajador dado su sueldo.

variables: sueldo,sueldo_neto,descuento inicio leer: sueldo si: sueldo <= 1000 entonces descuento <-- sueldo * 0.1 si_no si: sueldo <= 2000 entonces descuento <-- (sueldo - 1000) * 0.05 + 1000

* 0.1 si_no descuento <-- (sueldo - 2000) * 0.03 + 1000

* 0.1 fin_si imprimir: descuento. fin

24. Dado un tiempo en segundos, calcular los segundos restantes que le

correspondan para convertirse exactamente en minutos.

variables: tiempo_seg,minutos,segundos inicio leer: tiempo_seg si minutos <-- tiempo_seg div 60

entonces segundos <-- tiempo_seg mod 60 fin_si imprimir: minutos,segundos. fin

25 Dado un tiempo en minutos, calcular los dias, horas y minutos que

le corresponden.

variables: tiempo,dias,horas,minutos inicio leer: tiempo si: dias <-- tiempo div 1440 x <-- tiempo mod 1440 horas <-- x div 60 minutos <-- x mod 60 imprimir: dias,minutos,horas fin_si fin

…FIN…

top related