44
Guía practica de algorítmica Preparador: Emir Arismendi 1

nueva guia de algoritmica .doc

  • Upload
    adolfo

  • View
    235

  • Download
    1

Embed Size (px)

Citation preview

Page 1: nueva guia de algoritmica .doc

Guía practica de

algorítmica

Tutor(a). Elaborado

por:

Emir Arismendi

Puerto cabello, Junio 2012

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

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

seguir

Preparador: Emir Arismendi 1

Page 2: nueva guia de algoritmica .doc

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

mas

que se presentan.

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

Preparador: Emir Arismendi 2

Page 3: nueva guia de algoritmica .doc

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.

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

ver 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

Preparador: Emir Arismendi 3

Page 4: nueva guia de algoritmica .doc

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éti-

cas 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 de-

cimal.

Ejemplo: Sueldo, Notas, Comisiones.

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

racteres especiales. Con ellos no se puede realizar ninguna operación de tipo arit-

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

Alfanuméricos: Compuestos por un cadena de caracteres bien sea la combina-

ció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 Alfa-

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

Preparador: Emir Arismendi 4

Page 5: nueva guia de algoritmica .doc

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

cuentra un enunciado de asignación se evalúa la Expresión que esta a la dere-

cha del símbolo de asignación y asigna el resultado a la variable que esta a la iz-

quierda del símbolo de asignación.

Ejemplo:

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

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

ritmo 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 va-

riables son objetos de un algoritmo cuyo valor puede cambiar cuando este se si-

Preparador: Emir Arismendi 5

Page 6: nueva guia de algoritmica .doc

gue 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 conjun-

to de caracteres, letras y números, con los cuales se identifica un valor en un mo-

mento 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 repre-

senta o tiene en un momento determinado. Es importante decir que una variable

puede tener asociado un valor lógico como verdadero o falso, entero, real, carác-

ter o alfanumérico. Ejemplo: Apellidos: Rodríguez Álvare

CONTADOR

Es un tipo de variable numérica que cuenta determinados procesos en la reso-

lució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 ini-

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

Preparador: Emir Arismendi 6

Page 7: nueva guia de algoritmica .doc

Mod Toma el Resto de A por B.

+ Suma

- Resta

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

nalmente, 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 en-

cuentra en el algoritmo. Si la condición es falsa continua directamente con la si-

guiente instrucción del

algoritmo. Por ejemplo: Se permiten los siguientes enunciados:

SI (Edad>=18) ENTONCES

IMPRIMIR (“USTED ES MAYOR”);

FINSI

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

Preparador: Emir Arismendi 7

Page 8: nueva guia de algoritmica .doc

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

diendo

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

Algoritmo con estructura simple

Preparador: Emir Arismendi 8

Page 9: nueva guia de algoritmica .doc

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

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”)

Preparador: Emir Arismendi 9

Page 10: nueva guia de algoritmica .doc

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

“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

Preparador: Emir Arismendi 10

Page 11: nueva guia de algoritmica .doc

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

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

tre 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”

Preparador: Emir Arismendi 11

Page 12: nueva guia de algoritmica .doc

Á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

“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 am-

bos 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 im -

prima su resultado.

Inicio

NUM, Cua,CUb: numérico

NUM:0, Cua:0,CUb:0

“introduzca el valor “NUM

Cua:( NUM* NUM)

Preparador: Emir Arismendi 12

Page 13: nueva guia de algoritmica .doc

CUb:( NUM* NUM* NUM)

Imprimir” el cuadrado obtenido es “Cua

Imprimir “el cubo obtenido es” CUB

Fin

12. hacer un algoritmo que lea 2 valores y muestre: la suma, la resta, la multi -

plicació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)

Doble:( Num*2)

Imprimir el cuadrado obtenido es: Cuadrado

Imprimir el cubo obtenido es: Cubo

Imprimir la mitad obtenida es: Mitad

Preparador: Emir Arismendi 13

Page 14: nueva guia de algoritmica .doc

Imprimir el doble obtenido es: Doble

Fin

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

res, 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

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

Preparador: Emir Arismendi 14

Page 15: nueva guia de algoritmica .doc

TOTALB:(BA+BT)

TOTALD:(CA+I+IVSS)

SUELTOTL:(SB+ TOTALB)- TOTALD

Imprimir el nuevo sueldo a cobrar es: SUELTOTL

Fin

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.

Preparador: Emir Arismendi 15

Page 16: nueva guia de algoritmica .doc

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

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

tiplicara 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 resulta-

dos.

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

Preparador: Emir Arismendi 16

Page 17: nueva guia de algoritmica .doc

Multi: (N1*N2)

Fin si

Si (multi< 50 ) entonces

Suma: (multi+N3)

Fin si

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

medio. en caso de que este sea mayor a 18 se escribirá un mensaje “felicita-

ciones”

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 “per-

sona 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 17

Page 18: nueva guia de algoritmica .doc

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

primir 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

Si no

Comienzo

Imprimir (“alumno esta reprobado”)

Fin si no

Preparador: Emir Arismendi 18

Page 19: nueva guia de algoritmica .doc

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

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)

Preparador: Emir Arismendi 19

Page 20: nueva guia de algoritmica .doc

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

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”)

Preparador: Emir Arismendi 20

Page 21: nueva guia de algoritmica .doc

Fin si

Fin

Preparador: Emir Arismendi 21

Page 22: nueva guia de algoritmica .doc

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

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

Page 23: nueva guia de algoritmica .doc

“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 es-

tatura 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

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

Preparador: Emir Arismendi 23

Page 24: nueva guia de algoritmica .doc

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

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)

Preparador: Emir Arismendi 24

Page 25: nueva guia de algoritmica .doc

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

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

Preparador: Emir Arismendi 25

Page 26: nueva guia de algoritmica .doc

“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

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 26

Page 27: nueva guia de algoritmica .doc

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%

Ejercicio 9: realice un algoritmo que lea el área de un triangulo

Área(base*altura)/2

Preparador: Emir Arismendi 27

Page 28: nueva guia de algoritmica .doc

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

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

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

Preparador: Emir Arismendi 28

Page 29: nueva guia de algoritmica .doc

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

gundo, 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 impri-

ma su resultado.

7. hacer un algoritmo que lea 2 valores y muestre: la suma, la resta, la multiplica-

ció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 mi-

tad 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 res-

ta 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

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

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

Preparador: Emir Arismendi 29

Page 30: nueva guia de algoritmica .doc

5. hacer un algoritmo que lea 3 notas de un alumno calcule y muestre su prome-

dio. en caso de que este sea mayor a 18 se escribirá un mensaje “felicitacio-

nes”

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

na de los andes”

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

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

Algoritmos con estructuras condicionales (selectivas Dobles)

1. un portero de cine pide a cada persona su edad en la entrada para ver una pe-

lí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

Preparador: Emir Arismendi 30

Page 31: nueva guia de algoritmica .doc

caso contrario, so la persona mide mas de 160Cm. imprimir “persona de esta-

tura 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 velo-

cidad. si el promedio es mayor a80 imprimir”resultado”. si la distancia es ma-

yor 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:

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%

Preparador: Emir Arismendi 31

Page 32: nueva guia de algoritmica .doc

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

peratura de acuerdo a la siguiente tabla:

temperatura >85º natación temperatura >85º y 70º tenis temperatura >70º y 32º golf 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 gene-

ral 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 algorit-

mo 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 per-

tenecientes 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:

Preparador: Emir Arismendi 32

Page 33: nueva guia de algoritmica .doc

Nombre del Jugador

Veces al Bate

Hit Conectados

Extrabases Conectados

Cantidad de Sacrificios

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

ritmo 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 Ante-

rior; 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, toman-

do 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

Preparador: Emir Arismendi 33

Page 34: nueva guia de algoritmica .doc

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.

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

lar 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 34

Page 35: nueva guia de algoritmica .doc

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, to-

mando 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 entra-

da:

Cod. De Cliente

Tipo de Cuenta (Ahorro, Corriente)

Tipo de Actualización (Aporte, Retiro)

Monto de la Transacción

Preparador: Emir Arismendi 35

Page 36: nueva guia de algoritmica .doc

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

guiente:

Promedio de Informática

Cantidad de aprobados en matemática

Nota mayor de estadística

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

Preparador: Emir Arismendi 36