viernes, 21 de junio de 2013

Algoritmos

Algoritmos
Antes de escribir un programa, el programador debe tener muy claro que entendió el problema que va a solucionar. Que datos va utilizar, los cálculos , los resultados esperados y el procedimiento que utilizará.

Que es un algoritmo?
Un algoritmo es una secuencia paso a paso para resolver un problema. Es decir, un método empleado para la solución de un problema específico .

Características de los algoritmos:
Ser sencillos,claros, precisos
debe tener un orden lógico
tener un principio y un fin.

Ejemplo:
Hacer un algoritmo para intercambiar el contenido de dos tazas de líquido. Suponga que una tercera taza está disponible para depositar el contenido de cualquier taza,temporalmente. Cada taza deberá enjuagarse antes de vaciar cualquier liquido Nuevo en ella.

Inicio
1.-Depositar el liquido de la taza 1 a la taza 3.
2.-Enjuagar la taza 1.
3.-Vierta taza 2 a la taza 1.
4.-Enjuagar la taza 2
5.-Vierta la taza 3 a la taza 2.
Final

Tarea
Definir su robot, es decir, lo que sabe hacer tomando como referencia lo que Usted hace. Hacer un algoritmo que lo lleve desde que se despierta por la mañana hasta que llegue a la escuela.



Pseudocódigo
Es una técnica que se utiliza para el diseño de programas que permite definir datos, operaciones que se aplicarán a los datos y la lógica que tendrá un programa con un lenguaje informal, muy parecido a las estructuras que maneja un lenguaje de programación.

Estructuras de datos
Las estructuras de datos son las formas de representación interna de datos de la computadora.

Tipos de datos

Datos numéricos se dividen a su vez en enteros y reales.
Los números enteros (int) son los números que no contiene punto decimal; pueden ser positivos o negativos.
ejemplo: 520,4,0,-10, 45

Los números reales son los números que contienen punto decimal; pueden ser positivos o negativos, como por ejemplo:
44.58, 42.323, -5.5, 800.22, 23.56, -12.89

Cadena de caracteres
Los datos cadena de caracteres están compuestos por un grupo de caracteres alfanuméricos.
"Instituto Tecnológico de Tijuana"
"Programacion estructurada"
"X=455.87"

Datos character
El tipo de dato carácter utiliza 1 byte; cualquier carácter del código ASCII.

Datos Boolean
Este tipo de dato está compuesta por los valores Falso (false) y verdadero (true); no puede ser leído o escrito, solo asignado, es útil para plantear condiciones lógicas.

Variables
Son localidades de memoria que almacenan un valor. Todo dato que se maneja en un programa debe utilizar una variable  para almacenar los datos.

Caracteristicas de una variable
1)Debe tener un nombre que identifique a la variable y servirá para referenciarla.

Reglas para asignar un nombre a una variable
a) Se pueden utilizar una combinación de letras mayúsculas y minúsculas (A..Z..a..z) dígito (0...9) y el símbolo subrayado (_)
b)El nombre debe iniciar con una letra.
c)No se debe usar palabras reservada (if,then, else,for, do, while,for..etc)

Los nombres de variables deben ser apropiados a lo que representan

Como se declara una variable en pseudocódigo
nombre_variable   tipo_de _dato

ejemplo;
     meses int   
valor     real  
nombre_empleado[30]  char

Constantes
Las constants son valores fijos que tiene una localidad de memoria.
Por ejemplo:
PI=3.1416
interes=0.24


Lectura de datos (entrada)
Esta operación nos permite introducir los datos a la computadora desde el teclado, lector de codigo de barras.

El formato  es:
     Leer nomVariable1, nomVariable2, nomVariableN
        o
Read nomVariable1, nomVariable2, nomVariableN

Escritura de datos (salida)
La escritura da salida a los datos de la computadora hacia un periferico estandar como la pantalla
El formato es:
Imprimir  nomVariable1, nomVariable2, nomvariable3
o
write nomVariable1, nomVariable2, nomvariable3

Operaciones aritmeticas fundamentals
+ SUMA
- RESTA
* MULTIPLICACION
/ DIVISION
MOD RESIDUO DE UNA DIVISION ENTERA

= ASIGNACION
VARIABLE = EXPRESION
EJEMPLO: SUELDO= horas_trabajadas * pago_hora

La forma de examiner toda una expression de acuerdo a un orden de precedencia
1) Operaciones entre parentesis
primero se evalua lo que esta entre parentesis. Si existen parenthesis anidados primero evalua los más interiores hasta los exteriors.
2)Operaciones unarias
Es decir el cambio de signo
por ejmplo: -89 si le cambia de signo 89
3)multiplicacion y divison
4)suma y resta

Cuando existen varias operaciones de un mismo nivel, se evaluan de izquierda a derecha.

Ejemplo 1 : Hacer un algoritmo para calcular el promedio de un estudiante. Introducir los datos por teclado nombre,calificación 1, calificación 2, calificación 3 y calificación 4 ; de cada uno de los cuatro examines presentados. Imprimir nombre y el promedio de las calificaciones.

inicio
1.-declaración de variables
nombreAlumno[20]  char
calif1,calf2,calf3,calf4, promedio  real
2.-Solicita el nombre alumno y leer nombre
write "Nombre de alumno : "
read nombreAlumno
3.-Solicitar la calificacion 1,2,3 y 4 y leer calificacion 1,2,3,4
write " calificacion 1: "
read calif1
write " calificacion 2:  "
read calif2
write "calificacion 3:  "
read calif3
write " calificacion 4: "
read calif4
4.-calcular el promedio
promedio=(calif1+calif2 +calif3 + calif4)/4
5.-Desplegar nombre y promedio
write "Nombre Alumno : ",nombreAlumno
write"Promedio : ", promedio
fin

Ejemplo 2:

Haga el pseudocodigo que calculi e imprima el costo de un terreno. Se debe leer los datos de ancho y largo del terreno, y el costo del metro cuadrado.

inicio
ancho, largo, costom2, costoTotal  real

write " Introduce los datos del terreno "
write "Ancho : "
read ancho
write " Largo: "
read largo
write "Costo metro cuadrado : "
read costom2
costoTotal=ancho*largo*costom2
write "Costo Total del terreno ",costoTotal
fin


Tarea:
Haga un algoritmo y pseudocódigo que lea una cantidad de horas e imprima su equivalente en minutos, segundos y dias.


Diagrama de flujo  es la representación gráfica de un algoritmo. Cada paso de un proceso es representado por un símbolo  unidos  entre sí con flechas las que indican la dirección de flujo del proceso.























































































































































































































































No hay comentarios:

Publicar un comentario