1. APRENDIZAJE VIRTUAL
http://aprendizajevirtualmanco.blogspot.com/
De: Luis Angel Manco Vilcherres
Tema: Algoritmos
Casi inconscientemente nosotros, los
humanos efectuamos cotidianamente
una serie de pasos, acciones o
procedimientos que nos permite
alcanzar un resultado o resolver un
problema.
Por ejemplo. Al preparar un plato de
comida, seguimos una serie de pasos
que nos permiten alcanzar un resultado
específico.
En Conclusión.
Un algoritmo es un conjunto de pasos,
procedimientos o acciones que nos
permiten alcanzar un resultado o
resolver un problema
ETAPAS PARA LA SOLUCION DE UN
PROBLEMA
Características de un Algoritmo.
Las características fundamentales que
debe cumplir todo algoritmo son:
Un algoritmo debe ser preciso e
indicar el orden de realización de
cada paso.
Un algoritmo debe estar bien
definido. Si se sigue un algoritmo
dos veces, se debe obtener el
mismo resultado cada vez.
Un algoritmo debe ser Finito. Si se
sigue un algoritmo, se debe
terminar en algún momento, o
sea, debe tener un número finito
de paso.
SECCION QUE CONSTITUYEN
UN ALGORITMO
Entrada de Datos: Representa la
operación o acción que permite el
ingreso de los datos del problema.
Procedimiento de los Datos: Representa
la operación o conjunto de
operaciones secuenciales cuyo
objetivo es obtener la solución del
problema.
Impresión de Resultados: Representa
una operación o conjunto de
operaciones que permite comunicar al
exterior el o los resultados alcanzados.
REPRESENTACION GRAFICA DE
LOS ALGORITMOS
Para representar un algoritmo se
debe utilizar algún método que
permita independizar dicho
algoritmo del lenguaje de
programación elegido. Ello permitirá
que un algoritmo puede ser
codificado indistintamente en
cualquier lenguaje. Para conseguir
este objetivo se precisa que el
Algoritmos
Problema
Analisis
Profundo del
Problema
Construccion
del Algortimo
Verificacion
de un
Algortimo
Problema
Entrada de
Datos
Procedimiento
de los Datos
Impresión
de
Resultados
2. Tema: Algoritmo Aprendizaje Virtual
2
algoritmo sea representado grafica
o numéricamente, de modo que las
sucesivas acciones no dependan
de la sintaxis de ningún lenguaje de
programación, sino que la
descripción pueda servir fácilmente
para su transformación en un
programa, es decir, su codificación.
Los métodos usuales para
representar un algoritmo son:
Diagrama de Flujo
Diagrama N-S
Lenguaje de especificación
de algoritmo: Pseudocódigo
Lenguaje español, inglés.
Formulas.
Los que usaremos nosotros solo serán
dos: Diagrama de Flujo y Pseudocódigo
Es una de las técnicas de
representación de algoritmos más
antigua y a la vez más utilizada, aunque
su empleo ha disminuido
considerablemente, sobre todo, desde
la aparición del lenguaje de
programación estructurado.
Un diagrama de flujo representa la
esquematización grafica de un
algoritmo. En realidad muestra
gráficamente los pasos o procesos a
seguir para alcanzar la solución de un
problema. Su correcta construcción es
sumamente importante porque a partir
del mismo se escribe un programa en
algún lenguaje de programación. Si el
diagrama de flujo está completo y
correcto, el paso del mismo a un
lenguaje a programación es
relativamente simple y directo.
SIMBOLOS DE DIAGRAMADE FLUJO
Diagrama de Flujo
3. Tema: Algoritmo Aprendizaje Virtual
3
ETAPAS EN LA CONSTRUCCION DE UN
DIAGRAMA DE FLUJO
Se debe observar que estas fases se
presentan en la mayoría de los
diagramas de flujo, aunque a veces en
orden diferente o repitiendo algunas de
ellas. También es frecuente tener que
realizar toma de decisiones y repetir una
serie de pasos un numero
determinando o no de veces, pero
estos conceptos serán analizados en
clases posteriores.
REGLAS QUE PERMITEN LA
CONSTRUCCION DE UN DIAGRAMA DE
FLUJO
1. Todo Diagrama de flujo debe tener
un Inicio y un Fin.
2. Las líneas utilizadas para indicar la
dirección del diagrama de flujo deben
ser rectas, verticales y horizontales
No deben ser inclinadas.
Tampoco debemos cruzarlas.
3. Todas las líneas utilizadas para indicar
la dirección del diagrama de flujo
deben estar conectadas.
4. Es conveniente cuando realizamos
una tarea compleja poner comentarios
que expresen o ayuden a entender lo
que hicimos.
5. Si el Diagrama de flujo requiera más
de una hoja para su construcción,
debemos utilizar los conectores
adecuados y enumerar las páginas
convenientemente.
6. No puede llegar más de una línea a
un símbolo.
El Principal objetivo del pseudocódigo
es el de representar la solución de un
algoritmo de la forma más detallada
posible, y a su vez lo más parecida
posible al lenguaje que posteriormente
se utilizara para la codificación del
mismo.
El algoritmo comienza con la palabra
Start y finaliza con la palabra End, en
inglés (en Español Inicio, Fin). Entre estas
palabras, solo se escribe una instrucción
o acción por línea.
Pseudocódigo
4. Tema: Algoritmo Aprendizaje Virtual
4
Por fortuna, aunque el pseudocódigo
nació como un sustituto del lenguaje de
programación y, por consiguiente, sus
palabras reservadas se conservaron o
fueron muy similares a las del idioma
inglés, el uso del pseudocódigo se ha
extendido en la comunidad hispana
con términos en español como Inicio,
Fin, leer, escribir, si-entonces-sino,
mientras, fin_mientras, repetir,
hasta_que, etc. Sin duda, el uso de la
terminología del pseudocódigo en
español ha facilitado u facilitara
considerablemente el aprendizaje y uso
diario de la programación.
CONCEPTOS FUNDAMENTALES
1. Datos Numéricos. El tipo numérico es
el conjunto de los valores numéricos.
Estos pueden representarse en dos
formas distintas.
a) Tipo Numérico entero(Integer)
b) Tipo Numérico Real (Real)
a) Número Entero: Son números que
pueden estar precedidos del signo + o –
y que no tienen parte decimal.
Por Ejemplo.
835
-714
93
b) Número Real: Son números que
pueden estar precedidos del signo + o –
y que tienen una parte decimal.
Por Ejemplo.
10.5
-36.85
1385.10
2. Datos Alfanuméricos: Dentro de este
tipo de datos encontramos los de tipo
carácter (simple) y cadena de
caracteres (estructurado). Son datos
cuyo contenido pueden ser letras del
abecedario(a, b, c,…, z), dígitos (0, 1,
2,…, 9) o símbolos especiales ($, #, %, /,
+, -, etc) Un dato tipo carácter contiene
un solo carácter, y se escribe entre
apostrofes. Por Ejemplo.
“a”
‘B’
‘23’
‘$’
Un dato tipo cadena de caracteres
contiene un conjunto de caracteres, y
se escribe entre comillas, La longitud de
una cadena depende de los lenguajes
de programación, aunque
normalmente se acepta una longitud
máxima de 255. Por Ejemplo.
“Chimbote”
“Juan”
“2015”
3. Datos Lógicos (Booleanos).
El tipo lógico (También denominado
booleano) es aquel dato que solo
puede tomar uno de dos valores.
Verdadero (True)
Falso (False)
4. Constantes y Variables.
a) Constantes: Las constantes son
datos que no cambian durante la
ejecución de un programa. Es
muy importante que los nombres
de las constantes sean
representativas de la función que
tiene las mismas en el programa
b) Variables: Las variables son
objetos que pueden cambiar su
valor durante la ejecución de un
programa. Hay diferentes tipos
de variables, tales como enteras,
reales, carácter, lógicas y de
cadena. Una variable que es de
un cierto tipo puede tomar
únicamente valores de ese tipo.
5. Tema: Algoritmo Aprendizaje Virtual
5
OPERACIONES ARITMETICAS
Para poder realizar operaciones
aritméticas necesitamos de
operadores aritméticos. Estos
operadores nos permitirán realizar
operaciones aritméticas entre
operando: números, constantes o
variables. El resultado de una
operación aritmética será un
número.
Operador
Aritmético
Operación Ejemplo
+ Suma 8 + 5 = 13
- Resta 23 – 18 = 5
* Multiplicación 8 * 6 = 48
/ División 81/27 = 3
^, ** Potencia 7^2 = 49
div División Entera 25/2= 12
mod, % Residuo 45 / 4 = 1
Ejemplo:
9 𝑥 8 Se Representa por: 9 * 8
25
5
Se Representa por: 25/5
27
Se Representa por: 2^7
Operadores DIV, MOD (%)
Ejemplo.
43 Div 5 = 8
43 Mod 5 = 3
JERARQUIA DE LOS OPERADORES
ARITMETICOS
Al evaluar expresiones que contienen
más de un operador aritmético
debemos tomar en cuenta su jerarquía.
Nota: Es Importante indicar que el
operador ( ) es un operador asociativo
que tiene la prioridad más alta en
cualquier lenguaje de programación.
Ejemplos:
a) 8 + 9 – 14
17 - 14
3 < -- Rpta
b) 20 – 3 * 4 + 25 / 5
20 - 12 + 25 / 5
20 – 12 + 5
20 - 7
13 < -- Rpta
OPERADORES RELACIONALES
Permiten realizar comparaciones de
dos operandos, que pueden ser valores
de tipo numérico o carácter. El
resultado de una expresión con
operadores relacionales es verdadero o
falso.
6. Tema: Algoritmo Aprendizaje Virtual
6
Ejemplos:
a) 5 = 6 b) 10 < 13
(Falso) (Verdadero)
PROBLEMAS RESUELTOS
1. Hallar la suma de dos números.
Solución:
Entrada de datos: Para hallar la
suma de dos números, primero
tenemos que conocer el valor de
esos dos números.
Numero01 = A
Numero02 = B
Procedimiento: Proceso de Suma
Sumando + Sumando = Suma Total
Impresión de Resultados:
Vamos a imprimir “Suma Total.”
A. Pseudocódigo.
Inicio
Leer A, B
R <- A + B
Mostrar “La suma es:”, R
Fin
B. Diagrama de Flujo.
2. Hallar el Área de un círculo.
Solución:
Radio del Círculo.
𝐴 = 𝜋 ∗ 𝑟2
Entrada de Datos: Para encontrar
el área del círculo tenemos que
conocer el valor del Radio, en
este ejercicio nos encontramos
con un valor constante que es 𝛑
que equivale a 3,1416….
Radio = r
Pi = 3.1416
Procedimiento: Para encontrar el
área del circulo aplicaremos su
fórmula.
𝐴 = 𝜋 ∗ 𝑟2
Impresión de Resultados
Tenemos que imprimir a “A”.
OPERADOR OPERACIÓN
< Menor que
> Mayor que
" = " Igual que
<= Menor igual que
>= Mayor igual que
<>, != Diferente
Tabla de Operadores Relacionales
7. Tema: Algoritmo Aprendizaje Virtual
7
A. Pseudocódigo.
Inicio
Pi <- 3.1416
Leer R
A <- Pi * R^2
Mostrar “El área es:”, A
Fin
B. Diagrama de Flujo.
3. Dado las 5 calificaciones de un
alumno obtenidas a lo largo del
semestre, construya un algoritmo
que imprima el promedio de sus
calificaciones.
Solución:
Entrada de datos: Para este
ejercicio tendremos que ingresar
5 notas del 0 al 20.
Procedimiento: Para obtener el
promedio de las notas del
alumnos, se tiene que sumar
todas las notas y dividirlas entre 5.
Nota 01 = A
Nota 02 = B
Nota 03 = C
Nota 04 = D
Nota 05 = E
Impresión de Datos.
Tenemos que imprimir el resultado
que nos da “Promedio.”
A. Pseudocódigo.
Inicio
Leer A, B, C, D, E
Prom= (A+B+C+D+E / 5)
Mostrar “El promedio es: “, Prom
Fin
B. Diagrama de Flujo.
8. Tema: Algoritmo Aprendizaje Virtual
8
4. Hacer un algoritmo para que
lea el sueldo de tres empleados y
aplíqueles un aumento de 10, 12
y 15% respectivamente. Escriba el
sueldo final.
Solución:
Entrada de datos: Vamos a
ingresar el sueldo de tres
empleados.
Empleado 01 = A
Empleado 02 = B
Empleado 03 = C
Procedimiento: Nos dice en el
ejercicio que al primer empleado
se le aplicara un aumento del
10%, al segundo 12% y al tercero
se le hará un aumento del 15%.
Impresión de Datos: Tenemos que
imprimir el sueldo total de cada
empleado con su respectivo
aumento.
A. Pseudocódigo.
Inicio
Leer A, B, C
Emp01 = A + (A * 0.10)
Emp02 = B + (B * 0.12)
Emp03 = C + (C * 0.15)
Mostrar “El sueldo total del Primer
empleado es: “, Emp01
Mostrar “El sueldo total del Segundo
empleado es: “, Emp02
Mostrar “El sueldo total del Tercer
Empleado es: “, Emp03
Fin
B. Diagrama de Flujo.
EJERCICIOS PROPUESTOS
1. Hallar el área de un triángulo.
2. Hallar el volumen de un cilindro.
3. Hallar el área y el Perímetro de un
cuadrado.
4. Dado un número de 3 dígitos,
devolver el número en orden inverso.
5. Hallar el cociente y el residuo de
dos números enteros.
6. Tres personas deciden invertir su
dinero para fundar una empresa.
Cada una de ellas invierte una
cantidad distinta. Obtener el
porcentaje que cada quien invierte
con respecto a la cantidad total
invertida.
7. Un maestro desea saber qué
porcentaje de hombre y que
porcentaje de mujeres hay en un
grupo de estudiantes.