Está en la página 1de 58

INTRODUCCIÓN A LA CIENCIAS

COMPUTACIONALES / ANÁLISIS
Y DISEÑO DE ALGORITMOS

I PARCIAL
EVALUACION
FORO I………………………………………2%
TAREA TIPO DE DATOS………………2%
INTRODUCCIÓN A LA CIENCIAS
EJERCICIOS DE CLASE……………...
COMPUTACIONALES / ANÁLISIS Y3%
DISEÑO
GUIA……………………………………….
DE ALGORITMOS 3%
EXAMEN………………………………….10%
TOTAL……………………………………..20%
Algoritmos, Pseudocodigos,Diagramas
De Flujo Y Programas
PROBLEMAS Y ALGORITMOS
“Formalmente definimos un algoritmo como un
conjunto de pasos, procedimientos o acciones
que nos permiten alcanzar un resultado o resolver
un problema.”

Por otra parte, existe una gran cantidad de


problemas que requieren un análisis profundo y
un pensamiento flexible y estructurado para su
solución.
ETAPAS DE LA SOLUCIÓN DE UN PROBLEMA

Problema

Análisis
Construcción Verificación
Profundo del
de Algoritmo del Algoritmo
Problema
CARACTERÍSTICAS QUE LOS ALGORITMOS DEBEN REUNIR:
Precisión: Los pasos a seguir en el algoritmo deben
ser precisados claramente.

Definido: El orden de ejecución de las instrucciones


debe estar perfectamente indicado. Cuando se
ejecuta varias veces, con los mismos datos iniciales,
el resultado debe ser el mismo siempre.

Finitud: El algoritmo, independientemente de la


complejidad del mismo, siempre debe ser de longitud
finita.
PARTES O SECCIONES DE UN ALGORITMO
Para diseñar un algoritmo se debe comenzar por identificar las tareas más importantes para resolver
el problema y disponerlas en el orden en el que han de ser ejecutadas.

Los pasos en esta primera descripción de actividades deberán ser refinados añadiendo detalles a los
mismos e incluso, algunos de ellos, pueden requerir un refinamiento adicional antes que podamos
obtener un algoritmo claro preciso y completo. En un algoritmo se debe considerar tres partes:

Algoritmo

Procesos de Impresión de
Datos de Entrada
Datos Resultados
PARTES O SECCIONES DE UN ALGORITMO

Entrada: Información dada al algoritmo.


Proceso: Operaciones o cálculos necesarios para encontrar la solución
del problema.
Salida: Respuestas dadas por el algoritmo o resultados finales de los
cálculos.
CLASIFICACION DE LOS ALGORITMOS
• Algoritmo Cualitativo: Un algoritmo es cualitativo cuando en sus
pasos o instrucciones no están involucrados cálculos numéricos.
Ejemplos: Las instrucciones para desarrollar una actividad física,
encontrar un tesoro.
• Algoritmo Cuantitativo: Una algoritmo es cuantitativo cuando en sus
pasos o instrucciones involucran cálculos numéricos. Ejemplo:
Solución de una ecuación de segundo grado.
REPRESENTACION DE UN ALGORITMO
Diagramación libre (Diagramas de flujo)
Pseudocódigo
Diagramas Nassi-Shneiderman o Chapin
Lenguaje español
Fórmulas
Ejemplo 1. Algoritmos Cualitativos
• Algoritmo 1.1 Preparar una taza de té.
• Algoritmo 1.2 Procedimiento para lavarse los
dientes.
Ejemplo 2. Algoritmos Cuantitativos
• Algoritmo 2.1 Suma de dos números enteros.
• Algoritmo 2.2 Calcular el Promedio de la clase de un
alumno.
• Algoritmo 2.3 Mostrar cuanto es el total a pagar por la
compra de algún medicamento aplicando un Descuento
del 20 % .
PSEUDOCÓDIGO
Describen un algoritmo de forma similar a un lenguaje de programación pero
sin su rigidez, de forma más parecida al lenguaje natural. Presentan la
ventaja de ser más compactos que los diagramas de flujo, más fáciles de
escribir para las instrucciones complejas y más fáciles de transferir a un
lenguaje de programación. El pseudocódigo no esta regido por ningún
estándar.

Utilizaremos las siguientes palabras para realizar un Pseudocodigo:


• ESCRIBIR/LEER/IMPRIMIR para representar las acciones de ingreso de
datos (petición que se hace), lectura de datos (el programa recibe datos
desde algún sitio) y salida de datos (el programa escribe información en
algún medio).
Ejemplo
Entrada: num1, num2, suma ;
Inicio
Escribir “Ingrese el primer número a sumar”;
Leer num1;
Escribir “Ingrese el segundo número a sumar” ;
Leer num2 ;
suma = num1 + num2 ;
Imprimir “El resultado de la suma de los dos números introducidos es: ”,
suma;
Imprimir “Muchas gracias, adiós”
Fin
Salida: Suma de los dos números
Ejercicios
1. Ingrese el nombre de una persona, calcule la edad de la misma, e
imprima ambos resultados.

2. Realizar el Pseudocódigo de un programa que permita ingresar el


salario de un trabajador, el cual tendrá una deducción del 5%
equivalente al Seguro Social . imprimir cuanto es el sueldo sin
deducción, cuanto es la deducción y cuanto será el sueldo total del
empleado con la deducción hecha.
CONCEPTOS FUNDAMENTALES
TIPOS DE DATOS
Los datos a procesar por una computadora pueden clasificarse en:
• Simples
• Esctructurados
La principal característica de los datos simples es que ocupan solo una casilla de
memoria. Dentro de este grupo de datos se encuentra:
• Enteros
• Reales
• Caracteres
• Boleanos
Los datos estructurados se caracterizan por el hecho de que con un nombre
(Identificador de variable estructurada) se hace referencia a un grupo de casillas
de memoria. Dentro de este grupo de datos se encuentran:
• Arreglos
• Cadena de Caracteres
• Registros
Datos Numéricos

Dentro de los tipos de datos numéricos encontramos los


enteros y los reales.
Los enteros son números que pueden estar precedidos del
signo + o -, y que no tienen parte decimal por ejemplo:
128 1528 -714 8530 16235 -14780
Los reales son números que pueden estar precedidos del
signo + o -, y que tienen una parte decimal. Por ejemplo:
7.5 128.0 -37.865 129.7 16000.50 -15.0
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.).
Debemos remarcar que aunque este tipo de datos pueden
contener números, no pueden ser utilizados para realizar
operaciones aritméticas.
Un dato tipo carácter contiene un solo carácter, y se escribe
entre apostrofes. Por ejemplo:
‘a’ ‘B’ ‘$’ ‘9’ ‘-’ ‘#’ ‘f’
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.
“abcdf” “$9#7” “Carmen Duron” “Anabell” “9747-2725”
Datos Lógicos
Dentro de este tipo de dato encontramos los booleanos.
Son datos que solo pueden tener dos valores:
• Verdadero (true)
• Falso (false)
OPERADORES ARITMÉTICOS
Para poder realizar operaciones aritméticas necesitamos de
operadores.
Opertadores Aritméticos
Operador
Operación Ejemplo Resultado
Aritmético
^ Potencia 4^3 64
* Multiplicación 8.25*7 57.75
/ División 100/4 25
+ Suma 125.78+62.50 188.28
- Resta 65.30-20.40 44.9
mod Modulo (Residuo) 15 mod 2 1
div División Entera 17 div 3 5
OPERADORES DE RELACIÓN
Los operadores relacionales son operadores que permiten
comparar dos operando. Los operandos pueden ser
números, alfanuméricos, constantes o variables.
El resultado de una expresión con operadores relaciones
puede ser verdadero o falso.
Opertadores Relacionales
Operador
Operación Ejemplo Resultado
Aritmético
= Igual que hola' = 'lola' FALSO
<> Diferente a a' < > 'b' VERDADERO
< Menor que 7 < 15 VERDADERO
> Mayor que 22 > 11 VERDADERO
<= Menor o igual que 15 < = 22 VERDADERO
>= Mayor o igual que 35 >= 20 VERDADERO
OPERADORES LÓGICOS
Los operadores lógicos son operadores que permiten
formular condiciones complejas a partir de condiciones
simples. Los operadores lógicos son de conjunción (y),
disyunción (o) y negación (no).
Operadores Lógicos

Operador Expresión
Jerarquía Significado
Lógico Lógica
No Mayor No P No P
Y PyQ P sin embargo Q
O Menor PoQ P o Q o Ambas
DIAGRAMAS DE FLUJO
DIAGRAMA DE FLUJO
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.
SÍMBOLOS UTILIZADOS EN LOS DIAGRAMAS DE FLUJO

Símbolo utilizado para marcar el inicio y el fin del


diagrama de flujo.

Símbolo utilizado para introducir los datos de


entrada. Expresa lectura.

Símbolo utilizado para representar un proceso. En su


interior se expresan asignaciones, operaciones
aritméticas, cambios de valor de celdas en memoria,
etc.
SÍMBOLOS UTILIZADOS EN LOS DIAGRAMAS DE FLUJO
Símbolo utilizado para representar una decisión. En
su interior se almacena una condición, y
dependiendo del de la evaluación de la misma se
sigue una de las ramas o alternativas.

Este símbolo se utiliza en la estructura selectiva


multiple.

Símbolo utilizado para representar la impresión de un


resultado. Expresa escritura.
SÍMBOLOS UTILIZADOS EN LOS DIAGRAMAS DE FLUJO

Símbolos utilizados para expresar la


dirección del flujo del diagrama.

Símbolo utilizado para representar


conexión dentro de una misma pagina.

Símbolo utilizado para expresar


conexión entre paginas diferentes.
ETAPAS EN LA CONSTRUCCIÓN DE UN DIAGRAMA DE FLUJO
Se debe observar que en estas Inicio

fases se presentan en la mayoría


de los diagramas de flujo, aunque Lectura de
Datos
a veces en orden diferente o
repitiendo algunos de ellos.
También es frecuente tener que Procesamiento de
Datos
realizar toma de decisiones y
repetir una serie de pasos un
numero determinado o no de Impresión de
Resultado
veces.

Fin
FUNDAMENTOS BASICO PARA LA
DIAGRAMACION
1. Todo Diagrama de flujo debe tener un inicio u fin.
Inicio

Fin
2. Las líneas utilizadas para indicar la dirección del flujo del programa deben ser
rectas, verticales y horizontales.

Forma Correcta

No deben ser inclinadas.

Tampoco debemos cruzarlas.


3. Todas las líneas utilizadas para indicar la dirección del flujo del diagrama deben estar
conectadas. La conexión puede ser a un símbolo que expresa lectura, proceso, decisión,
impresión conexión o fin del diagrama.
SIEMPRE DENTRO DEL CONJUNTO DE REGLAS QUE PERMITEN LA CONSTRUCCIÓN DE
DIAGRAMAS DE FLUJO

4. El diagrama de flujo debe ser construido de arriba hacia abajo y de izquierda a


derecha.
5. La notación utilizada en el diagrama de flujo debe ser independiente del lenguaje de
programación. La solución presentada en el diagrama puede escribirse posteriormente
y fácilmente en diferentes lenguajes de programación.
6. Es conveniente cuando realizamos una tarea compleja poner comentarios que
expresen o ayuden a entender lo que hicimos.
7. Si el diagrama de flujo requiere más de una hoja para su construcción, debemos
utilizar los conectores adecuados y enumerar las páginas convenientemente.
8. No puede llegar más de una línea a un símbolo.

No Válido Válido

No Válido Válido
EJERCICIO

CONSTRUYA EL PSEUDOCODIGO Y DIAGRAMA DE FLUJO


DEL SIGUIENTE EJERCICIO.
TAL QUE DADO EL COSTO DE UN ARTICULO VENDIDO Y
LA CANTIDAD DE DINERO ENTREGADA POR EL CLIENTE,
CALCULE E IMPRIMA EL CAMBIO QUE SE DEBE ENTREGA
AL MISMO.
Ejercicio
• Realizar el Pseudocódigo y diagrama de flujo de un
programa que permita calcular el salario de un
trabajador, el cual tendrá una deducción del 3.5%
equivalente al Seguro Social , imprimir cuanto es el
salario del trabajador con la deducción hecha.
EJERCICIO PRACTICO
1. REALICE PSEUDOCODIGO Y DIAGRAMA DE FLUJO DE UN PROGRAMA
QUE PERMITA EL INGRESO DEL PAGO DE MATRÍCULA DE UN
ESTUDIANTE Y CALCULE EL PAGO DE LA PRIMERA MENSUALIDAD DE
ACUERDO A LA CANTIDAD DE CLASES QUE ESTE LLEVARÁ.
- PAGO DE MATRICULA L. 500.00
- CADA CLASE CUESTA L. 1100.00
- EL COSTO DE LOS LABORATORIOS CUESTA L. 100.00
- ¿CUÁNTO ES EL PAGO TOTAL QUE DEBE REALIZAR EL ESTUDIANTE.
PROGRAMAS
PROGRAMA
Un programa, concepto desarrollado por Von Neumann en 1946, es
una conjunto de instrucciones que sigue la computadora para
alcanzar un resultado especifico.

Un lenguaje de programación, por otra parte, esta constituido por


un conjunto de reglas sintácticas (especifica la formación de
instrucciones validas) y semánticas (especifica el significado de estas
instrucciones), que hacen posible escribir un programa.
• Cientos de lenguajes de programación se han desarrollado hasta la
fecha. Ya en 1969, se habían enumerado más de 120 que habían sido
utilizados ampliamente. Actualmente a los lenguajes de programación
podemos clasificarlos teniendo en cuenta el tipo de problemas que
son capaces de resolver de manera natural.
• Así tenemos, por ejemplo, para programación estructurada: PASCAL.
C, BASIC, FORTRAN, COBOL; estos tres últimos en su versión
estructurada.
• Para programación orientada a objetos: C++ ,JAVA.
RESOLUCION DE UN PROBLEMA
• Cuando tenemos que resolver un problema de tipo algorítmico,
entendiendo por esto aquellos que tienen una solución
determinística, primero desarrollamos el algoritmo Y Pseudocodigo,
que proporciona una solución muy general.
• Posteriormente construimos el diagrama de flujo , que esquematiza
gráfica y detalladamente la solución del problema, y a partir de éste,
escribimos el programa en algún lenguaje de programación
estructurado.
ESTRUCTURAS ALGORÍTMICAS SELECTIVAS

Las utilizamos cuando en el desarrollo de la solución de un problema


debemos tomar una decisión , para establecer un proceso o señalar un
camino alternativo a seguir.

Las estructuras algorítmicas selectivas que se utilizan para la toma de


decisiones lógicas las podemos clasificar de la siguiente forma:
1. SI ENTONCES (Estructura selectiva simple)
2. SI ENTONCES / SINO (Estructura selectiva doble)
3. SI MULTIPLE (Estructura selectiva múltiple)
LA ESTRUCTURA SELECTIVA SIMPLE
• La estructura selectiva si entonces permite que el flujo del diagrama
siga por un camino específico si se cumple una condición o conjunto
de condiciones. Si al evaluar la condición (o condiciones) el resultado
es verdadero, entonces se ejecuta(n) cierta(s) operación(es). Luego se
continúa con la secuencia normal del diagrama
Ejemplo
• Construya un diagrama de flujo tal que dado como dato la calificación
de un alumno en un examen, escriba “aprobado” en caso de que esa
calificación sea mayor a 8.
Ejemplo
• Dado como dato el sueldo de un trabajador, aplíquele un
aumento del 15% si su sueldo es inferior a $1000. Imprima
en este caso el nuevo sueldo del trabajador. Haga el
diagrama de flujo correspondiente.
LA ESTRUCTURA SELECTIVA DOBLE S I
ENTONCES/SI NO
• la estructura selectiva si entonces/si no permite que el flujo del
diagrama se bifurque por dos ramas diferentes en el punto de la toma
de decisión(es). Si al evaluar '. a condición (o condiciones) el resultado
es verdadero, entonces se sigue por un camino específico y se
ejecuta(n) cierta(s) operación(es). Por otra parte, si el resultado es
falso entonces se sigue por otro camino y se ejecuta(n) otra(s)
operación(es). En ambos casos, luego de ejecutarse la(s)
operación(es) indicada(s), se continúa con la secuencia normal del
diagrama
Ejemplo
Ejemplo
• Construya un diagrama de flujo tal que dado como dato la
calificación de un alumno en un examen, escriba “aprobado”
si su calificación es mayor o igual que 8 y “reprobado” en
caso contrario.
Diagrama de flujo
Ejemplo
• Construya el Pseudocodigo y diagrama de flujo tal que
dado como dato el sueldo de un trabajador, le aplique un
aumento del 15% si su sueldo es inferior a $1000 y 12%
en caso contrario. Imprima el nuevo sueldo del
trabajador.
Diagrama de flujo
LA ESTRUCTURA SELECTIVA MÚLTIPLE
• La estructura selectiva si múltiple permite que el flujo del diagrama se
bifurque por varias ramas en el punto de la toma de decisión(es), esto
en función del valor que tome el selector.
Ejercicio: aplicar La estructura selectiva múltiple
CONSTRUYA EL DIAGRAMA DE FLUJO Y EL PSEUDOCODIGO TAL QUE DADO COMO
DATOS LA CATEGORÍA Y EL SUELDO DE UN TRABAJADOR, CALCULE EL AUMENTO
CORRESPONDIENTE TENIENDO EN CUENTA LA SIGUIENTE TABLA.
NOTA: IMPRIMA LA CATEGORÍA Y EL NUEVO SUELDO DEL TRABAJADOR.
Diagrama de flujo
Ejercicio

También podría gustarte