Un Computador, Una Computadora o un Ordenador. Es un dispositivo que con la dirección de un programa, puede procesar datos, modificar las instrucciones de su propio programa, realizar cálculos, operaciones lógica s y diseñar soluciones a la medida de problemas específicos que se nos presenten, más aún, si estos involoucran operaciones matemáticas complejas y/o repetitivas, o requieren el manejo de un volumen muy grande de datos.
Programa: Se refiere a un conjunto de instrucciones dadas al computador para que se realice una tarea específica.
Programador: Es una persona o grupo de personas que escriben las instrucciones para una computadora, en general a los programas se les conoce como software.
Pasos para la resolución de problemas
1. Análisis del problema:
Se debe examinar muy bien el problema con el fin de obtrener una idea clara sobre lo que se solicita y determinar los datos para conseguirlo.
analis_problem.jpg

2. Diseño del algoritmo:
-Un algoritmo es una secuencia de pasos lógicos necesarios para llevar a cabo una tarea específica, como la solución de un problema.
-Los algoritmos son independientes tanto del lenguaje de programación en que se expresen como de la computadora que los ejecuta.
-En cada problema el algoritmo se puede expresar en un lenguaje diferente de programación y ejecutarse en una computadora distinta ; sin embargo el algoritmo será siempre el mismo.
Todo algoritmo debe ser:
  • Preciso: Indica el orden de realización de cada paso
  • Definido: Si se sigue un algoritmo varias veces proporcionandole los mismos datos , se deben obtener siempre los mismos resultados
  • Finito: Al seguir el algoritmo, éste debe terminar en algún momento, es decir, debe tener un número finito de pasos.

En un algoritmo se deben considerar :
pasos_alg.jpg
  • Entrada: Información dada al algoritmo.
  • Proceso: Operaciones o cálculos para encontrar la solución de un problema.
  • Salida: Respuestas dadas por el algoritmo o resultados finales de los cálculos.
Tipos de Algoritmos:
  • Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras
  • Cuantitativos: Son aquellos en los que se utilizan cálculo numéricos para definir los pasos del proceso
Lenguajes Algoritmicos .
Son una serie de símbolos y reglas que se utilizan para describir de manera explicita un proceso .
se clasifican en:
  • Gráficos: Es la representación gráfica de las operaciones que realiza un algoritmo(Diagrama de flujo)
  • No Gráficos: Se representan en forma descriptiva las operaciones que debe realizar un algoritmo(Pseudocódigo).
3. Verificación del Algoritmo.
Una vez escrito el algoritmo es necesario comprobar que realiza las tareas para las que fué diseñado y produce el resultado correcto y esperado, se le hace la prueba de escritorio, donde se asignan datos significativos que abarquen todo el rango de valores hasta la obtención de los resultados .
4. Fase de Implementación:
Una vez esté diseñado el algoritmo y verificado, se debe pasar a la fase de codificación que es la traducción del algoritmo a un determinado lenguaje de programación, es decir, se escribe el programa en una serie de instrucciones detalladas llamadas código fuente, que deberá ser completado con la ejecución y comprobación del programa en el computador.
5. Fase de documentación y mantenimiento.
Se elabora la documentación del programa y se realizan las actualizaciones oportunas que se necesiten.
volver
Tipos de Datos.
Entero: Subconjunto finito de los números enteros, cuyo rango depende del lenguaje en el que se codifique el algoritmo y del computador utilizado
Real: Subconjunto de los números reales , limitado en cuanto al tamaño a y a la presición
Lógico: Conjunto formado por los valores de verdad y falso.
Caracter: Conjunto finito y ordenado de los caracteres que la computadora reconoce
Cadena: Los datos de este tipo contienen una serie finita de caracteres.
Constantes: Son datos cuyo valor no cambia durante el desarrollo del algoritmo.
Variables: Una variable es un espaciuo de la mamoria donde se guarda temporalmente un dato cuyo valor puede variar durante el desarrollo del algoritmo.
Expresiones: Es una combinación de constantes , variables , simbolos de operación, parentesis y nombres de funciones especiales. ej a +(b+3)/c.
Operadores: Son elementos que se relacionan de forma diferente , los valores de una o más variables y/o constantes , los operadores nos permiten manipular valores.
Operadores Aritméticos:
+ suma
- resta
  • multiplicación
/ división.
Operadores Relacionales:
  • mayor que
< menor que
>= mayor o igual que
<= menor o igual que
<> diferente
= igual
Operadores lógicos
and y
or o
nor negacion
Diagrama de Flujo
Un diagrama de flujo es la representación gráfica de un algoritmo. Tambien se puede decir que es la representación detallada en forma gráfica de como deben realizarse los pasos en el computador para producir los resultados.
Los símbolos mas frecuentemente empleados se describen en la tabla siguiente:
pseudocódigo
Es una mezcla de lenguaje de programación y español(o inglés o cualquier otro idioma) que se emplea dentro de la programación estructurada, para realizar el diseño de un programa.
Es la representación narrativa de los pasos que debe seguir un algoritmo para dar solución a un problema determinado. El pseudocódigo utiliza palabras que indican el proceso a realizar.
Algoritmos Cualitativos Cotidianos:
Se refierebn a todos aquellos algoritmos que nos ayudan a resolver problemas diarios y que los hacemos casi sin darnos cuenta de que estamos siguiendo una metodología para resolverlos.
Ejemplo de algoritmo secuencial
Levantarse para ir al colegio:
inicio
Levantarse de la cama
Quitarse la piyama
Darse una ducha
Vestirse
Desayunar
Ir al colegio
Fin
Ejemplo de algoritmo condicional
Un cliente ejecuta un pedido a una fábrica. La fábrica examina en su banco de datos la ficha del cliente, si el cliente es solvente entonces acepta el pedido , en caso contrario rechaza el pedido.
inicio:
-leer el pedido
-examinar la ficha del cliente
-si el cliente es solvente aceptar el pedido, en caso contrario rechazar el pedido
fin
Ejemplo de algoritmo repetitivo
Arreglar la mesa para varios invitados
Inicio
-poner el mantel
repetir
-tomar una servilleta
hasta que el número de servilletas sea igual al número de invitados
repetir
-tomar un vaso
hasta que el número de vasos sea igual al número de invitados
repetir
-tomar un juego de platos
hasta que el número de juego de platos sea igual al número de invitados
repetir
-tomar un juego de cubiertos
hasta que el número de juego de cubiertos sea igual al número de invitados
fin
Ejercicios para resolver en clase
1. Cambiar la llanta de un auto
2.Hacer una llamada telefónica
3. La cocción de un huevo
4. ir al cine
5. Hacer una taza de café
6. Lavar los platos
7. Reparar el pinchazo de una bicicleta
8.Cambiar el cristal roto de una ventana.
volver
Estructuras Algoritmicas
1. Secuenciales
2. Condicionales
3. Repetición
1. ESTRUCTURAS ALGORITMICAS SECUENCIALES.
Es aquella en la que una acción(instrucción) sigue a otra en secuencia. las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el fin del proceso y se representa de la siguiente forma.
inicio
-Acción
-Acción
-
-
-
Fin

Taller No 1
-Hacer el DFD el pseudocódigo y la prueba de escritorio
1. Hacer el algoritmos para obtener el área y el perímetro del cuadrado
2.Hacer el algoritmos para obtener el área y el perímetro del rectangulo
3.Hacer el algoritmo para obtener el área y el perimetro de un triangulo rectangulo
3.Hacer el algoritmos para obtener el área y el perímetro del rombo
4.Hacer el algoritmos para obtener el área y el perímetro del trapecio
5.Hacer el algoritmos para obtener el área y el perímetro del circulo
6.Hacer el algoritmos para obtener el área y el perímetro de la elipse

Taller No 2
- Hacer el DFD el pseudocódigo y la prueba de escritorio
1) Suponga que un individuo desea invertir su capital en el banco y desea saber cuanto dinero ganará despues de un mes, si el banco paga a razon de 2% mensual.
2) Un vendedor recibe un sueldo base más el 10% extra por comisión de sus ventas, el vendedor desea saber cuanto dinero obtendrá por concepto de comisiones por las tres ventas que realiza en el mes y el total que recibirá en el mes tomando en cuenta su suedo base y comisiones.
3) Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuanto deberá pagar finalmente por su compra
4)Un alumno desea saber cual será su calificación final en la materia de algoritmos. Dicha calificación se compone de los siguientes porcentajes.
55% del promedio de tres calificaciones
30% de la calificación del examen final
15% de la calificación de un trabajo final
5)Un profesor desea saber que porcentaje de hombres y que porcentaje de mujeres hay en grupo de estudiantes.
6)Realizar un algoritmo que calcule la edad de una persona.

Bibliografiá
-JOYANES, Aguilar Luís, RODRIGUEZ Baena Luís, FERNANDEZ Azuela Matilde, Fiundamentos de programación, McGrawe Hill
-MATA Toledo Ramón CUSHMAN Pauline K, Introducción a la programación, Mc Graw Hill
-Diseño estructurado de algoritmos Instituto tecnológico de Tuxtepec
-Conceptos básicos de algoritmia , Ingeniería técnica industrial, Fundamentos de informática.
volver
ESTRUCTURAS ALGORITMICAS CONDICIONALES **
http://www.conocimientosweb.net/descargas/article242.html

Las estructuras condicionales comparan una variable contra otro(s) valor(es), para que en base al resultado de esta comparación, se siga un curso de acción dentro del programa. Cabe mencionar que la comparación se puede hacer contra otra variable o contra una constante, según se necesite. Existen dos tipos básicos, las simples y las múltiples.
  • Simples: Las estructuras condicionales simples se les conoce como “Tomas de decisión”. Estas tomas de decisión tienen la siguiente forma:
    Si entonces
    Acción(es)
    Fin-si
  • Dobles: Las estructuras condicionales dobles permiten elegir entre dos opciones o alternativas posibles en función del cumplimiento o no de una determinada condición. Se representa de la siguiente forma:
    Si entonces
    Acción(es)
    si no
    Acción(es)
    Fin-si
    Donde:
    • Si ………………… Indica el comando de comparación
    • Condición………… Indica la condición a evaluar
    • entonces……..…… Precede a las acciones a realizar cuando se cumple la condición
    • acción(es)………… Son las acciones a realizar cuando se cumple o no la condición
    • si no……………… Precede a las acciones a realizar cuando no se cumple la condición.
  • Múltiples: Las estructuras de comparación múltiples, son tomas de decisión especializadas que permiten comparar unas variables contras distintas posibles resultados, ejecutando para cada caso una serie de instrucciones específicas.

Resolver este taller .
Sistemas Grado 11 EBM
Taller de Estructuras algoritmicas Condicionales

1.Digite el nombre, la edad , si es mayor de 18 años puede votar
2..Digite el nombre, la edad , si es mayor de 18 años puede votar , de lo contrario no puede votar.
3. Que digite una clave , si coincide con el numero de la clave , que muestra un mensaje que diga acceso permitido, de lo contrario que muestre un mensaje acceso denegado.
4.Determinar si un estudiante aprueba o reprueba una materia, sabiendo que que aprobará si su promedio de tres calificaciones es mayor o igual a 3.
5.En un almacén se hace un descuento del 20% a los clientes cuya compra supere 1000000 de pesos , Cuanto tendrá que pagar por su compra?
6. Leer dos números, si son iguales que los multiplique , si el primero es mayor que el segundo , que los reste sino que los sume
7. Realice las cuatro operaciones básicas (Utilice el condicional para la división)
8.decir si un numero es par o impar
9.Mostrar el valor absoluto de un número.
10.Que digite el valor de tres artículos , que calcule , el iva y el valor inicial l, si el valor inicial es mayor de 5000000 de pesos descontar el 20% del valor inicial de lo contrario descontar el 5 % del valor inicial, Cuanto tiene que pagar finalmente?
11. Un obrero necesita calcular su salario semanal , el cual se obtiene de la siguiente forma , si trabaja 40 horas o menos se le paga 2000 por la hora , si trabaja mas de 40 horas se le paga 2000 por cada una de las 40 horas y 3000 por cada hora extra.
12. Dado tres números que los ordene de mayor a menor.
13. Dados dos valores dividir el mayor entre el menor
14.Leer dos números, si son iguales que los multiplique , si el primero es mayor que el segundo que los reste, y sino que los sume.
15. Muestre el número menor de tres números.
16.Una vez leído b y c, si c es mayor que b, entonces asignar a b el valor de c y a continuación a signar a c el valor del doble de b.
17. Una tienda de descuento se efectúa una promoción en la cual se hace un descuento sobre el valor de la compra total , según el color de la bolita , que el cliente saque cuando el cliente paga en la caja. Si la bolita es de color blanca no se hará descuento, si es verde se hará el 10 % de descuento, si es roja se le hará el 20% de descuento, si es azul se hará el 25% de descuento, si es amarilla se le hará el 50% de descuento y si es negra se hará el 100% de descuento, determinar la cantidad final que el cliente deberá pagar por su compra.

ver taller completo