nueva guia de algoritmica .pdf

42
Preparador: Emir Arismendi 1 Guía practica de algorítmica Tutor(a). Elaborado por: Emir Arismendi Puerto cabello, Junio 2012

Upload: adolfo

Post on 25-Jan-2016

144 views

Category:

Documents


9 download

TRANSCRIPT

Preparador: Emir Arismendi

1

Guía practica de

algorítmica

Tutor(a). Elaborado por:

Emir Arismendi

Puerto cabello, Junio 2012

Preparador: Emir Arismendi

2

Conceptos básicos de algorítmica (lógica de programación)

Algoritmo: Es un conjunto de pasos, instrucciones o decisiones que se deben seguir

para llegar a un fin. Conjunto de pasos, instrucciones o decisiones que se deben seguir y

Realizar coordinadamente para resolver un problema.

Tipos de Algoritmos:

1. Cualitativos.

2. Cuantitativos.

3. Directos.

4. Indirectos.

Algoritmos Cualitativos: Son todos aquellos pasos o instrucciones descritos por

medio de palabras que sirven para llegar a la solución de un problema.

Ejemplos: § Elaboración de una receta de cocina.

Algoritmos Cuantitativos: Son todos aquellos pasos o instrucciones que

Involucran cálculos numéricos para llegar a un resultado satisfactorio.

Ejemplo:§ Los pasos a seguir en la Solución de una Ecuación de Segundo Grado.

Algoritmo Directo: Es Aquel en donde se alcanza la solución en un número

conocido de pasos.

Algoritmo Indirecto: Es aquel en donde no cocemos el número necesario de pasos

para alcanzar la solución.

CARACTERÍSTICAS DE UN ALGORITMO.

Definido: Cada paso debe ser preciso, es decir, sin dejar posibilidades de

interpretaciones equivocadas.

Finito: Todo Algoritmo debe tener un comienzo y llegar a un final, es decir, un

número determinado de pasos.

Explicito: Todo Algoritmo a elaborar debe ser capaz de resolver todos los problemas

que se presentan.

Preparador: Emir Arismendi

3

Algoritmos Cualitativos:

1.- Como Hacer una Llamada Telefónica. Condición: De un teléfono público. El

Algoritmo Finaliza cuando se realice la llamada.

1. Inicio

2. Buscar el número

3. ¿Encontró el Número?: SI: Ir Paso 4

NO: Ir Paso 2

4. Ubicar el Teléfono

5. ¿Hay Teléfono?: SI: Ir Paso 6

NO: Ir Paso 4

6. Levantar el auricular.

7. ¿Esta Bueno el teléfono?: SI: Ir Paso 8

NO: Ir Paso 15

8. Marcar el Número Telefónico.

9. ¿Esta desocupada la Línea?: SI: Ir Paso 10

NO: Ir Paso 8

10. Esperar a que levanten la bocina del Teléfono.

11. ¿Tomaron el teléfono?: SI: Ir Paso 12

NO: Ir Paso 15

12. Preguntar por la Persona con quien desea hablar.

13. ¿Está la Persona?: SI: Ir Paso 14

NO: Ir Paso 15

14. Hablar con la Persona

15. Fin.

Preparador: Emir Arismendi

4

CONCEPTO DE PROGRAMA:

Es un conjunto de instrucciones, ordenes dadas a la máquina que producirán la

ejecución de una determinada tarea. En consecuencia un programa es un medio para

conseguir un fin.

El proceso de la programación es por consiguiente un proceso que permite resolver un

problema.

CARÁCTER: Es un espacio en blanco, una letra, un número, un signo, etc.

DATOS: Son medidas, valores o características que pueden ser manipulados y

constituyen la materia prima para producir la información, en otras palabras son el

material sin procesar del que se extrae la información. Se denomina dato a cualquier

objeto manipulable por la computadora. Un dato puede ser un carácter leído de un

teclado, información almacenada en disco, un número que se encuentre en memoria

principal.

TIPO DE DATOS:

Los datos pueden ser: Numéricos, alfanuméricos y booleanos.

Numéricos: Son los datos con los cuales se pueden realizar operaciones aritméticas o

matemáticas tales como: suma, resta, multiplicación y división; cuyo origen son los

dígitos del sistema decimal.

Estos tipos de datos se clasifican en:

Numérico Entero: Son aquellos números positivos o negativos sin parte decimal.

Ejemplo: Edad, Número de Hijos.

Numérico Reales: Son aquellos números positivos o negativos con una parte decimal.

Ejemplo: Sueldo, Notas, Comisiones.

Alfanuméricos: Son datos formados por combinaciones de números, letras y caracteres

especiales. Con ellos no se puede realizar ninguna operación de tipo aritmética o

matemática. Estos tipos de Datos se clasifican en:

Preparador: Emir Arismendi

5

Alfanuméricos: Compuestos por un cadena de caracteres bien sea la combinación de

letras y números.

Ejemplo: Nombre, Apellidos, direcciones, Código de Artículos, Placa de

Automóviles, Descripciones.

Carácter: Está representado por un solo carácter que puede se numérico o

Alfanumérico.

Ejemplo: Respuesta, Opciones.

ORIGEN:

Los datos pueden ser de origen externo o interno.

Externo: Los datos que maneja un algoritmo son de origen externo, si se

Obtienen al ejecutarse una acción de entrada (lectura). Los únicos datos que se pueden

leer son los numéricos o alfanuméricos.

Ejemplo: El Nombre de “X” Persona.

Interno: Los datos que maneja el algoritmo son de origen interno, si se obtienen al

ejecutarse una acción de asignación. Con los datos numéricos, alfanuméricos y boléanos

pueden realizarse

Operaciones de asignación.

Ejemplo: El Calculo del Sueldo Neto de “X” Persona.

La forma general de una acción de asignación es:

Variable:= Expresión;

Donde la Expresión puede ser una Constante, una Variable, una expresión aritmética o

matemática más complicada, etc. Cuando en un algoritmo se encuentra un enunciado de

asignación se evalúa la Expresión que esta a la derecha del símbolo de asignación y asigna

el resultado a la variable que esta a la izquierda del símbolo de asignación.

Ejemplo:

A:=3; Transfiere el número a la variable; es decir “A” toma el Valor de 3.

Preparador: Emir Arismendi

6

B:= A; Copia el dato de A a B; es decir lo que contiene la Variable “A” se la da a la

Variable “B”

A:= B*3+2; Multiplica B por 3, le suma 2 al resultado y lo obtenido se lo asigna a la

Variable “A”

El Calculo del Sueldo Neto de “X” Persona. Sueldo_Neto:= Total_de_Asignaciones –

Total_de_Deducciones; es decir resta el total de Asignaciones menos el total de

deducciones y se lo asigna a la Variable Sueldo_Neto.

CONSTANTES:

Como su nombre lo indica, son datos que no varían durante la ejecución o vida de un

algoritmo o programa. Toda constante se compone de dos partes esenciales: Un Nombre y

su Valor que no cambia.

Ejemplo: PI = 3.1416

VARIABLES:

Son áreas de memoria cuyo contenido cambia durante la ejecución de un algoritmo o

programa.

Nombre de la Constante Valor Son Lugares donde se almacenará la información. Esta

Información es la que manejará el algoritmo para producir resultados. Las variables son

objetos de un algoritmo cuyo valor puede cambiar cuando este se sigue paso a paso. Toda

variable se compone de dos partes esenciales: Un Nombre y su Valor.

El nombre de una variable debe se único y esta conformado por un conjunto de

caracteres, letras y números, con los cuales se identifica un valor en un momento

determinado. Este debe ser corto y con solo leerlo se debe determinar con facilidad lo

que la variable significa o contiene.

El valor de una variable es el contenido de la misma, es decir, lo ella representa o

tiene en un momento determinado. Es importante decir que una variable puede tener

Preparador: Emir Arismendi

7

asociado un valor lógico como verdadero o falso, entero, real, carácter o alfanumérico.

Ejemplo: Apellidos: Rodríguez Álvare

CONTADOR

Es un tipo de variable numérica que cuenta determinados procesos en la resolución de

un problema. También se puede decir, que un contador es una variable numérica entera

cuyo contenido va modificándose de uno en uno, a través de una instrucción de asignación.

Ejemplo: Variable:= Variable + 1 Nota: El contador se debe inicializar al principio de la

resolución del problema con

un valor cero (0) o uno (1). Ejemplo de cómo funciona un contador: Contar el número de

alumnos donde “c” es el contador.

ACUMULADOR

Es un tipo de variable numérica cuya función es la de almacenar el resultado de un

proceso matemático. También se puede decir, que un acumulador es una variable numérica

de tipo entera o real, cuyo contenido va modificándose a través de otra variable

numérica, por medio de una instrucción de asignación. Ejemplo: Variable:= Variable +

Variable que modificará Nota: El acumulador se debe inicializar con un valor de cero (0).

OPERADORES ARITMETICOS:

( ), [ ], { } , Expresiones entre Paréntesis, corchetes y llaves.

** o && Potencia

/ División (Numero Real)

* Multiplicación

\ o Div Toma la parte entera de A por B.

Mod Toma el Resto de A por B.

+ Suma

- Resta

Preparador: Emir Arismendi

8

OPERADORES RELACIONALES:

> Mayor que.

>= Mayor o igual que.

< Menor que.

< = Menor o igual que.

<> Diferente.

= Igual.

ESTRUCTURAS DE DECISION O SELECTIVAS:

SENTENCIA SI - ENTONCES ---- SI - ENTONCE - SINO (O EN CASO

CONTRARIO)

SELECCIÓN SIMPLE (SI – ENTONCES):

Se usa cuando se quiere que la computadora efectúe una acción condicionalmente,

es decir, solo cuando cierta condición es verdadera. La forma general de la selección

simple es:

SINTAXIS:

SI (CONDICION) ENTONCES

(ENUNCIADO DE ACCION)

FINSI

Se efectúa una prueba: Si la condición es verdadera la computadora ejecuta el enunciado

de acción y continúa después con la siguiente instrucción que se encuentra en el

algoritmo. Si la condición es falsa continua directamente con la siguiente instrucción del

algoritmo. Por ejemplo: Se permiten los siguientes enunciados:

SI (Edad>=18) ENTONCES

IMPRIMIR (“USTED ES MAYOR”);

FINSI

Preparador: Emir Arismendi

9

SELECCIÓN DOBLE (SI – ENTONCES – SINO(O EN CASO CONTRARIO)):

En la selección simple la computadora hace algo o no hace nada, dependiendo

del resultado de la prueba. En la selección doble efectúa una prueba y después realiza

algo en cualquier caso. Si la condición es verdadera la computadora ejecuta la alternativa

Entonces. Si la condición es falsa ejecuta la alternativa Sino o en caso contrario.

La forma general de la Selección doble es la siguiente:

SINTAXIS:

SI (CONDICION) ENTONCES

(BLOQUE1)

SINO

(BLOQUE2)

FINSI

Ejemplo:

SI (Edad>=18) ENTONCES

IMPRIMIR(“UD. ES MAYOR”)

SINO

IMPRIMIR(“UD. ES MENOR”)

FINSI

Preparador: Emir Arismendi

10

Algoritmo con estructura simple

1. Elabore un algoritmo que lee el ancho y el largo de un terreno a un costo de Bs,f 2000.

y calcule el costo de terreno..

Algoritmo calculo

Ancho, largo, multi1, multi2, Tmulti: numérico real

Inicio

Imprimir (“introduzca el ancho del terreno”)

Leer (ancho)

Imprimir (“introduzca el largo del terreno”)

Leer (largo)

multi1:(ancho * 2000)

multi2: (largo *”2000)

Tmulti: (multi1+ multi2)

Imprimir (“el costo del terreno es:”tmulti)

Fin

2. Elabore un algoritmo que lea 2 números, los sume e imprima el resultado.

Algoritmo-suma

N1, N2, SUMA: numérico real

Imprimir (“introduzca primer valor”)

Leer (N1)

Imprimir (“introduzca segundo valor”)

Leer (N2)

SUMA: N1+N2)

Imprimir (“la suma es:” SUMA)

Fin

Preparador: Emir Arismendi

11

3. Realiza un algoritmo que calcule el salario de N trabajadores dados los números de

horas trabajadas, y el costo por la hora. el algoritmo debe mostrar el salario final.

Algoritmo nomina

num.: numérico entero

Ch, SI, ST, NTH: numérico real

Inicio

Imprimir (“introduzca el número de trabajadores”)

Leer (num.)

Imprimir (introduzca número de horas trabajadas”)

Leer (NTH)

Imprimir (“introduzca el costo por las horas”)

Leer (Ch)

Imprimir (“introduzca sueldo inicial”)

Leer (SI)

ST=(NTH*Ch)

Imprimir (“el sueldo final del trabajador es:” ST)

Fin

4. Elabore un algoritmo que calcule el total a de la compra de 3 pares de zapatos, los

cuales tienen un descuente del 12%. y se pide que muestre el total apagar por los 3

pares de zapato.

Algoritmo calculo

Declaración de variable

Dsct, Pr1, Pr2, Pr3, Dsc1, Dsc2, Dsc3: numérico real

Inicio

“introduzca precio del zapato 1”Pr1

“introduzca precio del zapato 2”Pr2

Preparador: Emir Arismendi

12

“introduzca precio del zapato 3”Pr3

Dsc1 :( Pr1*12/100)-Pr1

Dsc2 :( Pr2*12/100)-Pr2

Dsc3 :( Pr2*12/100)-Pr3

Dsct :( Dsc1+Dsc2+Dsc3)

“el total a pagar por los zapatos es “Dsct

Fin

5. Realiza un algoritmo que calcule el salario de N trabajadores dados los números de

horas trabajadas, y el costo por la hora. el algoritmo debe mostrar el salario final.

Algoritmo nomina

num.: numérico entero

Ch, SI, ST, NTH: numérico real

Inicio

Imprimir (“introduzca el número de trabajadores”)

Leer (num.)

Imprimir (introduzca número de horas trabajadas”)

Leer (NTH)

Imprimir (“introduzca el costo por las horas”)

Leer (Ch)

Imprimir (“introduzca sueldo inicial”)

Leer (SI)

ST=(NTH*Ch)

Imprimir (“el sueldo final del trabajador es:” ST)

Fin

Preparador: Emir Arismendi

13

6. Hacer un algoritmo que lea un número cualquiera, calcule su cuadrado y muestre su

resultado

Inicio

NUM,C: numérico

“introduzca el numero” NUM

C:(NUM*NUM)

Imprimir el cubo obtenido es:C”

Fin

7. hacer un algoritmo que lea e imprima tu nombre

Inicio

NOMB: alfabetico

“introduzca el nombre de la persona”NOMB

Imprimir el nombre es: NOMB

Fin

8. hacer un algoritmo que permita calcular el área de un triangulo

Inicio

Base, Altura, Área: numérico

“introduzca la base”

“introduzca la altura”

Área:(Base*Altura) / 2

Imprimir el Área obtenida es: Área

Fin

9. hacer un algoritmo que lea 3 notas y calcule y muestre su resultado.

N1, N2, N3, P: numérico

N1:0, N2:0, N3:0, P:0

“introduzca la primera nota”N1

Preparador: Emir Arismendi

14

“introduzca la segunda nota”N2

“introduzca la tercera nota”N3

P:(N1+N2+N3)3

Imprimir el promedio obtenido es: P

Fin

10. hacer un algoritmo que lea 3 valores, e imprima la suma del primer con el segundo,

luego deberá multiplicar dicha suma por el tercer valor mostrar ambos resultados.

A, B, C, Sum, Multi: numérico

A:0, B:0, C:0, Sum:0, Multi:0

“introduzca el primer valor “A

“introduzca el segundo valor” B

“introduzca el tercer valor”C

Sum:(A+B)

Multi:(Sum+C)

Imprimir la suma obtenida es: Sum

Imprimir la multiplicación obtenida es: multi

Fin

11. hacer un algoritmo que lea un valor y muestre su cuadrado y el cubo e imprima su

resultado.

Inicio

NUM, Cua,CUb: numérico

NUM:0, Cua:0,CUb:0

“introduzca el valor “NUM

Cua:( NUM* NUM)

CUb:( NUM* NUM* NUM)

Imprimir” el cuadrado obtenido es “Cua

Preparador: Emir Arismendi

15

Imprimir “el cubo obtenido es” CUB

Fin

12. hacer un algoritmo que lea 2 valores y muestre: la suma, la resta, la multiplicación y

la división del primer valor con el segundo.

A,B,Mul,Sun,Res,Div: numérica

A:0,B:0,Mul:0,Sun:0,Res:0,Div:0

“introduzca el primer valor “A

“introduzca el segundo valor”B

Mul:(A*B)

Sun:(A+B)

Res:(A-B)

Div:(A/B)

Imprimir la suma obtenida es: Sun

Imprimir la multiplicación obtenida es: Mul

Imprimir la resta obtenida es:Res

Imprimir la División obtenida es: Div

Fin

13. hacer un algoritmo que lea un numero y muestre: su cuadrado, su cubo, la mitad y el

doble de su valor

Inicio

Num, Cuadrado, Cubo, Mitad, Doble: numérico

Num: 0, cuadrado: 0, cubo: 0, mitad: 0, doble:0

“Introduzca el numero”Num

Cuadrado:( Num* Num)

Cubo:( Num* Num* Num)

Mitad:( Num/2)

Preparador: Emir Arismendi

16

Doble:( Num*2)

Imprimir el cuadrado obtenido es: Cuadrado

Imprimir el cubo obtenido es: Cubo

Imprimir la mitad obtenida es: Mitad

Imprimir el doble obtenido es: Doble

Fin

14. hacer un algoritmo que lea dos valores e imprima la suma de los dos valores, la

resta del segundo menos el primero, la multiplicación del resultado de la resta por el

primero. mostrar todos los resultados

Inicio

A,B,suma, resta,multiplicación: numérica

A:0,B:0,suma:0, resta:0,multiplicación:0

“introduzca el primer valor” A

“introduzca el segundo valor” B

suma:(A+B)

resta:(B-A)

multiplicación:(resta*A)

Imprimir la suma obtenida es: suma

Imprimir la multiplicación obtenida es: multiplicación

Imprimir la resta obtenida es: resta

Fin

Preparador: Emir Arismendi

17

15. calcule el nuevo sueldo de un trabajador, después de descontarle impuesto, caja de

ahorros y seguro social. e incrementarle el bono de asistencia y bono de transporte .

se pide que muestre el sueldo final.

I, SB, SUELTOTL, CA , IVSS, BA, BT, TOTALB, TOTALD: numérico

I:0, SB:0, SUELTOTL:0, CA:0 , IVSS:0, BA:0, BT:0, TOTALB:0, TOTALD:0

“introduzca el sueldo básico”SB

“introduzca el monto del impuesto” I

“introduzca el el monto de la caja de ahorros”CA

“introduzca el monto del seguro social “IVSS

“introduzca el bono de asistencia” BA

“introduzca el bono de transporte ”BT

TOTALB:(BA+BT)

TOTALD:(CA+I+IVSS)

SUELTOTL:(SB+ TOTALB)- TOTALD

Imprimir el nuevo sueldo a cobrar es: SUELTOTL

Fin

Preparador: Emir Arismendi

18

Algoritmos con condicionantes

Algoritmos con estructuras condicionales (selectivas simples)

16. Hacer un algoritmo que lea la edad de una persona, si esta es mayor o igual a 18,

imprimir “sujeto mayor de edad”

Inicio

edad: numérico

edad:0

“introduzca la edad de la persona” edad

Si edad> =18 entonces

Imprimir “sujeto mayor de edad”

Fin si

Imprimir la edad obtenida es: edad

Fin

17. Hacer un algoritmo que lea dos valores, calcule su suma y en caso de que esta sea

mayor o igual a 20 la muestre.

Inicio

a,b,suma: numérico

a:0, b:0, suma:0

“Introduzca el primer valor” a

“Introduzca el segundo valor ”b

Suma(a+b)

Si suma>=20 entonces

Imprimir “la suma obtenida es”: suma

Fin si

Fin

Preparador: Emir Arismendi

19

18. leer dos valores e imprimir ambos solo si son positivos.

Inicio

X,Y,: numérico

X:0,Y:0

Introduzca el primer valor” X

Introduzca el segundo valor” Y

Si (X>0) y (Y>0) entonces

Imprimir “el primer número es”: X

Imprimir “el segundo número es”: Y

Fin si

fin

19. hacer un algoritmo que lea tres valores. si el primero es mayor a 10 se multiplicara

el primer valor con el segundo valor, y si este multiplicación es menor a 50 se le

sumara al resultado el tercer valor y se mostraras todos los resultados.

Inicio

N1,N2,N3,multi, suma: numérico

N1:0,N2:0,N3:0,multi:0, suma:0

“introduzca el primer valor”N1

“introduzca el segundo valor” N2

“introduzca el tercer valor” N3

Si (N1>10) entonces

Multi: (N1*N2)

Fin si

Si (multi< 50 ) entonces

Suma: (multi+N3)

Fin si

Preparador: Emir Arismendi

20

Imprimir “la multiplicación obtenida es”: multi

Imprimir “ la suma obtenida es”: suma

Fin

20. Hacer un algoritmo que lea 3 notas de un alumno calcule y muestre su promedio. en

caso de que este sea mayor a 18 se escribirá un mensaje “felicitaciones”

Inicio

A,B,C,P: numérico

A:0,B:0,C:0,P:0

“introduzca la primera nota” A

“introduzca la segunda nota” B

“introduzca la tercera nota” C

P: (A+B+C) / 3

Si P > 18 entonces

Imprimir “felicitaciones”

Fin si

Imprimir “la nota obtenida es” : P

Fin

21. Preguntar si una persona es de Mérida o Táchira, de ser cierto imprimir “persona

de los andes”

Inicio

LugarG: alfabético

Introduzca lugar de estadía: lugarG

Si (lugarG: Mérida) or lugarG (Táchira) entonces

Imprimir “persona de los andes”

Fin

Preparador: Emir Arismendi

21

22. Hacer un algoritmo que lea el nombre, la edad y el sexo de un alumno e imprimir el

teléfono y el nombre de las mujeres mayores de 18 años

Inicio

Edad, telf : numérico

Sexo , nombre : alfabético

“Introduzca el nombre” nombre

“Introduzca el sexo “Sexo

“Introduzca teléfono” telf

“Introduzca la edad” Edad

Si (Sexo: mujer ) and (Edad >: 18 ) entonces

Imprimir “ el telefono de la persona es : telf

Imprimir el nombre de la persona es : “nombre

Fin si

Fin

23. Realizar un algoritmo que lea la calificación de un alumno y determine si está o no

aprobado. La condición para aprobar es obtener una calificación >=10.

Algoritmo nota

Declaración de variable

nota: numérico real

Inicio

Imprimir (“introduzca la calificación del alumno”);

Leer (nota)

si nota>=10 entonces

Comienzo

Imprimir (“el alumno esta aprobado”)

Fin si

Preparador: Emir Arismendi

22

Si no

Comienzo

Imprimir (“alumno esta reprobado”)

Fin si no

FIM

24. Elabore un algoritmo que lea 3 números. Si el primero es mayor que el segundo, se

multiplicaran ambos. Si no calcular su promedio.

Algoritmo calculo

Declaración de variables

N1, N2, N3, MULTI, PROME: numérico entero

Inicio

Imprimir (“introduzca valor 1”)

Leer (N1)

Imprimir (“introduzca Valor “”)

Leer (N2)

Imprimir (“introduzca valor 3”)

Leer (N3)

Si N1>N2 entonces

MULTI:(N1*N2)

Fin si

Si no

PROME: (N1+N2+N3)/3

Fin si no

Imprimir (“el promedio es:” PROME;

Imprimir (“la multiplicación es:”MULTI

Fin

Preparador: Emir Arismendi

23

25. Elabora un algoritmo que lea la edad de una persona, y su estado civil. Si es mayor

de edad y estado civil solteros imprima un mensaje que diga” se puede casar”. Es caso

contrario “no se puede casar”,

Algoritmo estado _ civil

ED: numérico entero

ESTC: alfanumérico cadena

Inicio

Imprimir (“introduzca la edad”)

Leer (ED)

Imprimir (“introduzca estado civil”)

Leer (ESTC)

si (ED>18) and (ESTC=soltero) entonces

Comienzo

Imprimir (“se puede casar”)

Fin si

Si no

Imprimir (“no se puede casar”)

Fin sino

Fin

Preparador: Emir Arismendi

24

26. Elabore un algoritmo que lea la edad, nacionalidad de una persona. Si es mayor de

edad y nacionalidad venezolana. Imprimir un mensaje “puede votar”, en caso contrario

“no puede votar”.

Algoritmo-estado

ED: numérico entero

NAC: alfanumérico cadena

Inicio

Imprimir (“introduzca la edad”)

Leer (ED)

Imprimir (“introduzca la nacionalidad de la persona”)

Leer (NAC)

si (ED>18) and (NAC=venezolano) entonces

Imprimir (“si puede votar “)

Fin si

Sino

Imprimir (“no puede votar”)

Fin si

Fin

Algoritmos con estructuras condicionales (selectivas Dobles)

27. Un portero de cine pide a cada persona su edad en la entrada para ver una película

clase”D”, hacer un algoritmo que lea la edad de las personas y nos diga si puede o no

entrar.

Inicio

Edad: numérico

Edad:0

“introduzca la edad de la persona” Edad

Si (Edad >18) entonces

Imprimir “si puede entrar”

Sino

Imprimir “no puede entrar”

Fin si

Fin

28. Se va a realizar un sondeo para las votaciones, de forma que se genere un mensaje

de “VOTA” o “NO VOTA”. dependiendo de la edad sea mayor o igual a 18 años.

Inicio

Edad: numérico

Edad:0

“introduzca la edad de la persona” Edad

Si (Edad >18) entonces

Imprimir “si vota”

Sino

Imprimir “no vota”

Fin si

Fin

Preparador: Emir Arismendi

26

29. hacer un algoritmo que lea dos valores y nos indique cual es el mayor

Inicio

A, B, Mayor: numérico

A:0, B:0, Mayor:0

“introduzca la primera valor” A

“introduzca la segunda valor” B

Si(A>B) entonces

Mayor: A

Si no

Mayor: B

Fin Si

Imprimir “el numero Mayor es” Mayor

Fin

30. Leer la edad y la estatura de una persona, si la persona tiene mas de 15 años y su

estatura es menor o igual a 160Cm. imprimir·”persona baja estatura” en caso

contrario, so la persona mide mas de 160Cm. imprimir “persona de estatura normal”

Inicio

Edad, Est: numérico

Edad:0, Est:0

“Introduzca la edad de la persona” Edad

“Introduzca la estatura de la persona” Est

Si (Edad >15) and (Est<=160) entonces

Imprimir “persona de baja estatura”

Si no

Imprimir “persona de estatura normal”

Fin si

Fin

Preparador: Emir Arismendi

27

Algoritmos con ciclo Repetitivos (For y While)

31. En Venezuela el próximo 07 de octubre son las elecciones presidenciales, lo cual se

pide que usted elabore un algoritmo que lea la edad y nacionalidad de una población de

votantes de 100 electores. Si estos son mayores de edad y nacionalidad venezolanos,

imprimir un mensage que diga “puede votar”, en caso contrario imprimir “no puede

votar”.

Inicio

I,ED: numérico

Naci: alfabético

Ed:0

(Introduzca la edad de los votantes) ED

(Introduzca la nacionalidad de todos los votantes) Naci

Para I:0 hasta 100

Si ED>=18 y Naci=venezolano entonces

Imprimir “si pueden votar”

si no

Imprimir “no puede votar”

Fin si

I=I+1

fin para

Fin

Preparador: Emir Arismendi

28

32. Elabore un algoritmo utilizando ciclo for que me permita calcular el sueldo final a

80 trabajadores de la empresa Mix centerC.A. Teniiendo como dato de entrada el

sueldo basico, tambien el pago del IVSS de 15%, LPH de 25% y ademas tiene un

bonolaboral del 48% sobre su sueldo. El algoritmo debe mostrar el nuevo sueldo y el

nombre, CI, y Rif de todos los empleados.

Inicio

I,Sb,CI,Sueldon,IVSS,LPH,BONO,Rif, TotalD: numerico

NOMB:alfabetico

I=0,Sb=0,CI=0,Sueldon=0,IVSS=0,LPH=0,BONO=0, Rif=0,TotalD=0

ParaI:0 hasta 80

(Introduzca sueldo basico de los empleados)Sb

(Introduzca nombre de los empleados)NOMB

(Introduzca el RIF de los empleados) Rif

IVSS=(Sb*0,15)

LPH=(Sb*0,25)

BONO=(Sb*0,48)

TotalD=(IVSS+LPH)

Sueldon=((Sb+BONO)-TotalD)

Imprimir(el nuevo sueldo es:Sueldon)

Imprimir(el nombre de los empleados es :NOMB)

Imprimir(la cedula de los empleados es:CI)

Imprimir(el Rif de los empleaods es:Rif)

I:I+1

Fin para

Fin

Preparador: Emir Arismendi

29

33. Elabore un algoritmo para la empresa Nipson C.A, la cual tiene una nomina de 1000

empledos. El algoritmo debe calcular el aumento de sueldo de los empleados en base a

su antiguedad. El aumento se hara de acuerdo a la siguientes condiciones:

a) 5 a 9 años - 8% de aumento

b) 10 a 14 años - 10 % de aumento

c) 15 a 25 años - 12% de aumento

d) >25 años - 20% de aumento

Inicio

I, Sueldo,aum,antig:numericas

OPC: alfabetico

Sueldo=0,aum=0,antig=0

Para I:0 hasta 1000

“Introdusca años de antiguedad” antig

“Introduzca sueldo inicial”Sueldo

“Menu Principal”

a) 5 a 9 años - 8% de aumento

b) 10 a 14 años - 10 % de aumento

c) 15 a 25 años - 12% de aumento

d) >25 años - 20% de aumento

“Elija Opcion”OPC

Si OPC=a entonces

aum=(Sueldo*0,08)+Sueldo

fin si

Si OPC=b entonces

aum=(Sueldo*0,10)+Sueldo

fin si

Preparador: Emir Arismendi

30

Si OPC=c entonces

aum=(Sueldo*0,12)+Sueldo

fin si

Si OPC=d entonces

aum=(Sueldo*0,20)+Sueldo

fin si

I=I+1

Imprimir “el aumento recido es:aum”

fin para

Fin

Preparador: Emir Arismendi

31

Ejercicios propuestos

Ejercicio 1: Realice un algoritmo que lea la nota de un alumno sabiendo que este tiene

3 calificaciones, el algoritmo debe calcular e imprimir su promedio.

Ejercicio 2: calcular el precio a pagar por “X” articulo, sabiendo su precio, menos el

15% de descuento.

Ejercicio 3: elabore un algoritmo que lea el nombre, el sexo y la edad de una persona.

Ejercicio 4: elabore un algoritmo que lea 3 números, si el primero es mayos que el

tercero. Calcular su promedio, si no calcular la multiplicación de los 3 valores. El

algoritmo debe imprimir ambos resultados

Ejercicio 5: elabore un algoritmo que calcule la suma, resta y multiplicación de dos

números

Ejercicio 6: elabore un algoritmo que calcule la edad de una persona, el nombre y

determine si esta es mayor o menor de edad

Ejercicio 7: elabore un algoritmo que calcule el total a pagar por un televisor

sabiendo que este tiene un descuento del 12%

Ejercicio 8:realice un algoritmo que permita calcular e imprimir el monto a cancelar

por la copia realizadas en un centro de copiado, teniendo como dato la cantidad de

copias, costo de las copias 1000Bs. T tienen un descuento de 5%

Preparador: Emir Arismendi

32

Ejercicio 9: realice un algoritmo que lea el área de un triangulo Área(base*altura)/2

Ejercicio 10: en una tienda por departamentos se venden chaquetas a Bs. 1500c/u si

usted compra mas de 3 , en caso contrario se venden a 2000Bs. c/u. el algoritmo debe

tener como dato de entrada la cantidad de camisas y desplegar el total a pagar por las

camisas

Ejercicio 11: elabore un algoritmo que lea 3 notas e indique si el alumno esta o no

aprobad

Preparador: Emir Arismendi

33

Ejercicios ya resueltos en la guía

(Algoritmos con estructuras simples)

1. Hacer un algoritmo que lea un número cualquiera, calcule su cuadrado y muestre su

resultado

2. hacer un algoritmo que lea e imprima tu nombre

3. hacer un algoritmo que permita calcular el área de un triangulo

4. hacer un algoritmo que lea 3 notas y calcule y muestre su resultado.

5. hacer un algoritmo que lea 3 valores, e imprima la suma del primer con el segundo,

luego deberá multiplicar dicha suma por el tercer valor mostrar ambos resultados.

6. hacer un algoritmo que lea un valor y muestre su cuadrado y el cubo e imprima su

resultado.

7. hacer un algoritmo que lea 2 valores y muestre: la suma, la resta, la multiplicación y la

división del primer valor con el segundo.

8. hacer un algoritmo que lea un numero y muestre: su cuadrado, su cubo, la mitad y el

doble de su valor

9. hacer un algoritmo que lea dos valores e imprima la suma de los dos valores, la resta

del segundo menos el primero, la multiplicación del resultado de la resta por el

primero. mostrar ambos resultados

10. se desea obtener el sueldo mensual de un profesor, conociendo el número de horas

trabajadas, el valor de la hora y el descuento del IVSS.

11. calcule el nuevo sueldo de un trabajador, después de descontarle impuesto, caja de

ahorros y seguro social. e incrementarle el bono de asistencia de 15% y bono de

transporte 10%. se pide que muestre el sueldo final.

12. se desea obtener el sueldo mensual de un profesor, conociendo el número de horas

trabajadas, el valor de la hora y el descuento del IVSS

Preparador: Emir Arismendi

34

Algoritmos con estructuras condicionales (selectivas simples)

1. hacer un algoritmo que lea la edad de una persona , si esta es mayor o igual a 18,

imprimir “sujeto mayor de edad”

2. Hacer un algoritmo que lea dos valores, calcule su suma y en caso de que esta sea

mayor o igual a 20 la muestre. b

3. leer dos valores e imprimir ambos solo si son positivos.

4. hacer un algoritmo que lea tres valores. si el primero es mayor a 10 se multiplicara el

primer valor con el segundo valor, y si este multiplicación es menor a 50 se le sumara

al resultado el tercer valor y se mostraras todos los resultados.

5. hacer un algoritmo que lea 3 notas de un alumno calcule y muestre su promedio. en

caso de que este sea mayor a 18 se escribirá un mensaje “felicitaciones”

6. preguntar si una persona es de merida o Táchira, de ser cierto imprimir “persona de

los andes”

7. hacer un algoritmo que lea el nombre, la edad y el sexo de un alumno e imprimir el

teléfono y el nombre de las mujeres mayores de 18 años

Preparador: Emir Arismendi

35

Algoritmos con estructuras condicionales (selectivas Dobles)

1. un portero de cine pide a cada persona su edad en la entrada para ver una película

clase”D”, hacer un algoritmo que lea la edad de las personas y nos diga si puede o no

entrar.

2. se va a realizar un sondeo para las votaciones, de forma que se genere un mensaje de

“VOTA” o “NO VOTA”. dependiendo de la edad sea mayor o igual a 18 años.

3. hacer un algoritmo que lea dos valores y nos indique cual es el mayor

4. leer la edad y la estatura de una persona, si la persona tiene mas de 15 años y su

estatura es menor o igual a 160Cm. imprimir·”persona baja estatura” en caso

contrario, so la persona mide mas de 160Cm. imprimir “persona de estatura normal”

5. hacer un algoritmo que lea el tiempo en horas que lleva al conductor ir de una ciudad a

otra, así como la distancia entre ambas. calcule su promedio de velocidad. si el

promedio es mayor a80 imprimir”resultado”. si la distancia es mayor a 100KM. y el

promedio es menor o igual a 80 imprimir “cambie el carro”.

6. leer tres valores, si el primero es menor a 10 se deberá sumar el segundo con el

tercer valor, y si el resultado de esta suma es menor a 50 se multiplicara por 10.

mostrar el resultado.

7. elabore un algoritmo que determina la cantidad total apagar por una llamada

telefónica bajo la siguiente condición:

Preparador: Emir Arismendi

36

todas las llamadas menores a 3 minutos tendrán un descuento del 20% sobre su valor.

todas las llamadas mayores o iguales a 3 minutos tendrán un recargo sobre su valor .

mostrar ambos resultados

8. leer el sueldo de un empleado y calcular su monto de seguro social, sabiendo que si su

sueldo básico es de 100.000Bs. o menos se le tomara el 4,5% de su sueldo, mientras si

gana mas de 100.000Bs. se le descuenta directamente 6589Bs. mostrar el resultado.

9. leer 3 valores e imprimir cual de los tres es, el mayor u cual es el menor.

10. suponga que usted esta encargado de un centro de computación y se le ha pedido

entregar un listado con el nombre y la deuda de un cliente, así como también el nuevo

precio a pagar según los días de retraso:

si el atraso es >30 pero <60 días----- 2%

>60 y <90 días -----------05%

>90 <120dias -----------07%

>120 días será la mitad del monto adeudado. Imprimir el nuevo pago a pagar

11. leer un valor, si es positivo calcular su cuadrado y si es negativo calcular su cubo.

mostrar ambos resultados. n

12. leer la temperatura e imprima el deporte que es apropiado hacer a esa

temperatura de acuerdo a la siguiente tabla:

temperatura >85º natación

temperatura >85º y 70º tenis

temperatura >70º y 32º golf

Preparador: Emir Arismendi

37

temperatura >32º y 10º Esquí

temperatura <10º Ajedrez

Algoritmos con estructuras repetitivas (ciclos for And While)

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. Dada la C.I., Nombre, y la Nota Definitiva de 30 estudiantes, realice un algoritmo que

permita calcular y dar como salida lo siguiente:

Cantidad de Alumnos Aprobados

Cantidad de Alumnos Reprobados

Promedio General de Notas

3. 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.

4. Realice un Algoritmo que permita calcular y dar como salida el promedio de bateo de

cada jugador perteneciente a un equipo de 40 jugadores, tomando en cuenta que se

tienen los siguientes datos:

Nombre del Jugador

Veces al Bate

Hit Conectados

Extrabases Conectados

Cantidad de Sacrificios

Preparador: Emir Arismendi

38

Cantidad de Bases por Bolas Recibidas

Nota: PB = BBC / VLB * 1000

BBC = HIT + EXT

VLB = VB - S - BB

5. 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 Bs.

Empresarial 35 Bs.

Nota: Cant. De Imp = L. Actual - L. Anterior.

6. Una Ferretería vende dos tipos de Cables, Cable Tipo A (200 Bs. MT) y Cable Tipo B

(300 Bs. 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

7. 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.

Preparador: Emir Arismendi

39

8. Un Tecnológico, ofrece un curso “x” y desea realizar un algoritmo que permita

determinar y dar como salida la cantidad de dinero recaudado por concepto del curso;

teniendo en cuenta que se tiene por cada participante la siguiente información:

Cedula de Identidad

Nombre del Participante

Procedencia (At = Alumno del Tecnológico, Dt = Docente del Tecnológico, Pg =

Publico en General).

Tomando en cuenta que la procedencia se cobra de la siguiente tarifa:

At = 10.000 Bs.

Dt = 20.000 Bs.

Pg = 35.000 Bs.

Nota: El cupo para el curso no es limitado.

9. Una Empresa de Reproducción desea realizar un algoritmo que permita calcular y dar

como salida el pago que tiene que hacer cada cliente por concepto de copias, tomando

en cuenta que se tienen los siguientes datos:

Cod. de Cliente

Tipo de Copia (Carta, Oficio, ExtraOficio)

Cantidad de Copias

Además el Algoritmo debe reportar lo siguiente:

Preparador: Emir Arismendi

40

Total de Copias tipo Carta y Tipo Oficio procesadas por la empresa.

Promedio de Ventas en Bs.

Cod. Del Cliente que cancelo mas dinero por el servicio.

El Valor por tipo de Copia es:

Carta 15 Bs.

Oficio 20 Bs.

Extraoficio 25 Bs.

El Algoritmo debe funcionar para “n” cantidad de clientes.

10. Realice un Algoritmo que permita procesar a “n” cantidad de alumnos, tomando en

cuenta que se tienen los siguientes datos:

Nombre del Alumno

Especialidad (I, R, A, B, P, D, T)

Turno (M, T, N)

El Algoritmo debe reportar y dar como salida lo siguiente:

Cantidad de Relaciones Industriales

Cantidad de Alumnos de Informática del Turno de la Noche.

11. Realice un Algoritmo que teniendo en cuenta los siguientes datos de entrada:

Cod. De Cliente

Tipo de Cuenta (Ahorro, Corriente)

Preparador: Emir Arismendi

41

Tipo de Actualización (Aporte, Retiro)

Monto de la Transacción

Calcule y de cómo salida lo siguiente:

Monto Total de Aporte en Ahorro

Monto Total de Retiro en Corriente

Promedio de Retiro en Ahorro.

12. Realice un Algoritmo que permita dar como salida la población de dos países (a y b),

teniendo en cuenta para tal propósito lo siguiente:

En el Primer Año el País “a” tiene menos población que el país “b”

Las Tazas de crecimiento de los países “a” y “b” son de 6% y 3% anuales

respectivamente.

Se debe dar como salidas las poblaciones desde el segundo año hasta que la

población de “a” exceda a la población de “b”, además la cantidad de años que

transcurrieron para que esto sucediera

13. Realice un algoritmo que permita calcular y dar como salida la temperatura media,

mayor y menor ocurrida durante el transcurso de un día.

14. Data la Nota de Matemática, Estadística e Informática de un grupo de 25

alumnos, realice un algoritmo que permita calcular y dar como salida lo siguiente:

Promedio de Informática

Cantidad de aprobados en matemática

Nota mayor de estadística

Preparador: Emir Arismendi

42

Nota menos de Informática y Nombre del Br. Que la Obtuvo.