Lenguajes de programacin.1 Metodologa para resolver un problema.3 Algoritmos4 Diagramas de flujo.7 Pseucodigo10 Prueba de escritorio..11 Estructura de control12 Estructura de seleccin............................................13 Variable......21 Conclusin24
LENGUAJES DE PROGRAMACIN
Los lenguajes mas primitivos fueron los lenguajes llamados maquina, como el hardware se desarrollaba antes que el software, estos lenguajes se basaban en el hardware, con lo que cada maquina tenia su propio lenguaje y por ello la programacin era u trabajo costoso, valido solo para esa maquina en concreto. El primer avance fue el desarrollo de las primeras herramientas automticas generadoras de cdigo fuente. Pero en el permanente desarrollo de las computadoras, y el aumento de la complejidad en las tareas, surgieron a partir de los aos 50 los primeros lenguajes de programacin de alto nivel.
Atributo: metodologa para resolver un problema. Identificar el problema, analizar comprender la situacin a resolver. Plantear alternativas de solucin. Elegir la alternativa de solucin adecuada. Desarrollar la alternativa de solucin. Identificar la solucin, poner a prueba con datos reales, buscar los errores.
LENGUAJE MAQUINA: este lenguaje ordena a la mquina las operaciones fundamentales para su funcionamiento. Consiste en la combinacin de 0's y 1's para formar las ordenes entendibles por el hardware de la maquina. Este lenguaje maquina es mucho ms rpido que los lenguajes de alto nivel.
2
La desventaja es que son bastantes difciles de manejar y usar, adems de tener cdigos fuente enormes donde encontrar un fallo es casi imposible. LENGUAJE ENSAMBLADOR: es un derivado del lenguaje maquina y esta formado por abreviaturas de letras y nmeros llamadas mnemotcnicos. Con la aparicin de este lenguaje se crearon los programas traductores para poder pasar los programas escritos en lenguaje ensamblador a lenguaje mquina. Como ventaja con respecto al cdigo mquina es que los cdigos fuentes eran ms cortos y los programas creados ocupaban menos memoria. Las desventajas de este lenguaje siguen siendo prcticamente las mismas que las del lenguaje ensamblador, aadiendo la dificultad de tener que aprender un nuevo lenguaje difcil de probar y mantener.
Paso1.-ANALISIS: el programa se analiza teniendo presente la especificacin de los requisitos dados por el cliente de la empresa ola persona que encarga el programa. Paso2.-DISEO: una vez analizado el problema se disea una solucin que conducir a un algoritmo que resuelva el problema. Paso3.-CODIFICACION: la solucin se escribe en la sintaxis del lenguaje de alto nivel y se obtiene un programa fuente que se compila a continuacin. Paso4.-EJECUCION, VERIFICACION Y DEPURACION: el programa se ejecuta, se comprueba rigurosamente y elimina todos los errores que puedan aparecer. Paso5.-MANTENIMIENTO:el programa se actualiza y modifica, cada vez que sea necesario, de modo que se cumplan todas las necesidades de cambio de usuarios. Paso6.-DOCUMENTACION: escritura de las diferentes fases del ciclo de vida del software, esencialmente el anlisis, diseo y codificacin, unidos a manuales de usuario y de referencia, as como normas para el mantenimiento.
ALGORITMO
Es una serie de pasos ordenados a seguir para resolver un problema y deben estar libres de ambigedad.
CARACTERISTICAS
FINITO
PRECISO
DEFINIDO
ESCRITURA DE ALGORITMOS
Se sigue una o dos veces, se obtiene el mismo resultado cada vez que se sigue
El sistema para escribir un algoritmo consiste en realizar una descripcin paso a paso con un lenguaje natural del citado algoritmo. Un algoritmo tiene las siguientes reglas: Deben ir seguidas de alguna secuencia definida de pasos hasta que se obtenga un resultado coherente. Solo puede ejecutarse una operacin a la vez
EJEMPLOS: Realiza un algoritmo que permita calcular el rea y el permetro de un rectngulo. 1. 2. 3. 4. 5. 6. 7. 8. 9. Inicio Escribe base Lee bas Escribe haltura Lee haltura A=bas x altura P=2*bas+2*haltura Imprime el rea es A, el permetro es P fin
Inicio Escribe el numero a multiplicar Lee num Res=num*1 Res2=num*2 Res3=num*3 Res4=num*4 Res5=num*5 Rest6=num*6 Res7=nm.*7 Imprime el resultado de mult num*1=res Imprime el resultado de mult num*2=res2 Imprime el resultado de mult num*3=res3 Imprime el resultado de mult num*4=res4 Imprime el resultado de mult num*5=res5 Imprime el resultado de mult num*6=res6 Imprime el resultado de mult num*7=res7 Fin
DIAGRAMA DE FLUJO
Es un esquema para representar grficamente un algoritmo, se basa en la utilizacin de diversos smbolos para representar operaciones especficas. Se le llama diagrama de flujo porque los smbolos utilizados se conectan por medio de flechas para indicar la secuencia de la operacin.
c) Las lneas de flujo no deben cruzarse, para evitar los cruces se utilizan los conectores. d) De un smbolo excepto el de decisin, solo puede salir una lnea de flujo. e) Los smbolos Terminal, Conector dentro de pgina y conector fuera de pgina solo pueden estar conectados al diagrama por una sola flecha, ya que por su naturaleza es imposible que tenga una entrada y una de salida. f) Los mbolos de decisin tendrn siempre una sola flecha de entrada y dos o tres flechas de salida segn la cantidad de alternativas que se presentan. EJEMPLO: 1.-Realizar un algoritmo que permita calcular la edad de una persona. Si la edad es <= a 18 aos mostrar el mensaje de debes tramitar tu credencial de elector si la edad es menor que 18 aos mostrar el siguiente mensaje aun eres menor de edad. 1. 2. 3. 4. 5. Inicio Escribe ao de nacimiento Lee Ana Edad=2012-ana Si edad es <18 entonces
Lee Ana
Edad>=2012-ana
Si edad <=18
Fin
ENTRADA NO/DESICIONES/SI
DISCOS MAGNETICOS
Discos magnticos
CONECTOR DE PAGINA Sirve para conectar otra pagina ORDEN DISPLAY Lneas de flujo Enva datos a impresora
ARCHIVO DE FINITIVO
Archivo de finitivo
DOCUMENTO
Entrada y salida
ARCHIVO TEMPORAL
Archivo temporal
PRUEBA DE ESCRITORIO
Es el desarrollo o comprobacin de un algoritmo para verificar si es correcto o no lo es, y si cumple con la especificacin, si necesidad de ejecutarlo en una ejecucin a mano de un algoritmo. Para realizar una prueba de escritorio se anota como primer elemento los datos de entrada, los procesos y para finalizar a el resultado que se llegue Consiste en dar diferentes datos de entrada al diagrama y seguir la lgica de programacin y que el resultado sea algo verdico. Tomando las variables involucradas en el mismo para as llegar al registr de los valores Ejemplo: ALGORITMO 1.-Inicio 2.-Suma 3.-J=1 4.-Mientras (j=-2) 4.1-Dame calificacin 4.2.-Lee calif 4.3.-Suma=calif+suma 4.4.-J=j+1 Fin mientras 5.- prom=suma/2 6.- imprime prom PRUEBA DE ESCRITORIO J 1 2 J<=-2 J<=-2 J<=-2 CALIF 10 8 suma=10+8 suma=18 prom=18/2
10
PSEUDOCDIGO
Es una descripcin de un algoritmo informtico de programacin de alto nivel compacto e informal que utiliza las convenciones estructurales de un lenguaje de programacin verdadero, pero que est diseado para la lectura humana en lugar de la lectura en mquina, y con independencia de cualquier otro lenguaje de programacin. Normalmente, el pseudocdigo omite detalles que no son esenciales para la comprensin humana del algoritmo, tales como declaraciones de variables, cdigo especfico del sistema y algunas subrutinas.
EJEMPLO:
ALGORITMO 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Inicio Pedir la base mayor Lee bm Pedir la base menor Lee bme Pedir la altura Lee al Sum=bm+bme Mul=sum*al rea=mul2 Imprime el rea del trapecio es rea Fin PSEUCODIGO Comenzar Pedir la base mayor Pedir la base menor Pedir la altura Sum=bm+bme
Mul=sum*al rea=mul2 Escribir rea Fin
11
ESTRUCTURA DE CONTROL
La estructura de control nos permite modificar el flujo de ejecucin de las instrucciones de un programa. Todas las estructuras de control tienen un nico punto de entrada as como tambin un nico punto de salida. Las estructuras de control se puede clasificar en : secuenciales, iterativas y de control avanzadas. Esto es una de las cosas que permite que la programacin se rija por los principios de la programacin estructurada. Podemos clasificar cada una de las estructuras de control ms comunes en programacin en uno de los siguientes tipos: Secuencia: Ejecucin sucesiva de una o ms operaciones. Seleccin: Se realiza una u otra operacin, dependiendo de una condicin.
En programacin, una estructura de control te permitir controlar el flujo de la ejecucin de instrucciones. Con estas estructuras, el programador puede determinar el orden en que se ejecutarn las instrucciones que estn dentro de estas estructuras. Originalmente las lneas de cdigo de programacin (instrucciones) sern ejecutadas secuencialmente, o sea, una despus de la otra. Para alterar el orden de ejecucin se utilizaba el enunciado goto, llamado "transferencia de control".
12
Dos investigadores, Bohm y Jacopini, demostraron que el goto traa grandes problemas en el desarrollo de programas. Tambin demostraron que los programas podan ser escritos sin ningn enunciado goto utilizando dos estructuras de control: estructura de seleccin, y estructura de repeticin.
ESTRUCTURA DE SELECCIN La especificacin de forma normal de un algoritmo tiene realmente utilidad cuando el algoritmo requiere una descripcin ms complicada que una lista sencilla de instrucciones. Este se lleva acabo un nmero de posibles alternativas resultantes de la evaluacin de una determinada condiciones. Las estructuras selectivas se usan para tomar decisiones lgicas; tambin se evalua la condicin y la funcin del resultado de la misma se realiza una opcin u otra. Las condiciones se especifican usando expresiones lgicas. La representacin de una estructura selectiva se hace con palabras en pseudocdigo (if, the, else o bien en espaol si, entonces, si _ no ) con una figura en forma de rombo bien con un triangulo en el interior de una caja rectangular. Alternativa simple:
La alternativa simple si entonces (if) ejecuta una determina accin cuando se cumple una determinada accin cuando se cumple una determinada condicin. La seleccin si entonces evala la condicin y Si la condicin es verdadera, entonces ejecuta la accin si (o acciones caso de ser si una accin compuesta y constar de varias accin )
13
ESTRUCTURA DE SELECCIN DOBLE: Son estructuras lgicas que permiten controlar la ejecucin de varias acciones y se utilizan cuando se tienen dos opciones de accin, por la naturaleza de esta se deben ejecutar una o la otra, pero no ambas a la vez, es decir, son mutuamente excluyentes.
14
Dado como dato la calificacin de un alumno en un examen, escriba "aprobado" si su calificacin es mayor que 8 y "Reprobado" en caso contrario. Algoritmo: Inicio Leer (cal) Si cal > 8 entonces Escribir ("aprobado") Sino Escribir ("reprobado") Fin si Fin
15
Break; }; La estructura switch permite elegir ejecutar diferentes cdigos dependiendo de un valor. switch (valor) { case 1: ejecuta esto si valor es 1 break; case 2: ejecuta esto si valor es 2 break; case 3: ejecuta esto si valor es 3 break; default: ejecuta esto si valor no es ninguno de los anteriores break; };
17
ESTRUCTURA DE REPETICIN
La estructura repetitiva Mientras (en ingls while o dowhile: hacer mientras) es aquella en que el cuerpo del bucle se repita mientras se cumpla una determinada condicin. Cuando se ejecuta la instruccin Mientras, la primera cosa que sucede es que evala la condicin (una expresin booleana), si se evala falsa, no se toma ninguna accin y el programa prosigue en la siguiente instruccin del bucle. Si la expresin booleana es verdadera, entonces se ejecuta el cuerpo del bucle, despus de lo cual se evala de nuevo la expresin booleana. Este proceso repite una y otra vez mientras la expresin booleana (condicin) sea verdadera.
Booleana: es llamada una expresin lgica cuyo valor siempre es verdadero (true) o falso (false) y que variables lgicas pueden tomar sol estos dos valores. En esencia de expresin lgica es una es una expresin que sol puede tomar estos dos valores, verdadero y falso. Las expresiones lgicas se forman combinando constantes lgicas, variables lgicas y otras expresiones lgicas, utilizando los operadores lgicos not, and y or y los operadores relacionales (de relacin o comparacin) =,<,>.<=,>=,<>Ejemplo: estructura mientras
18
Condicin
No
Si
Acciones
REGLAS PARA LAS ESTRUCTURA MIENTRAS Regla1 - Siempre se debe inicializar una variable con un valor Sintaxis R1 Nombre o Variable = valor o nombre de una variable que ya tenga un valor Ejemplo:
A=20 2y=x Regla 2- Antes de que se cierra el si mientras en alguna variable que se inicializo debe incremento debe incrementarse o decrimentarse Sintaxis R2
19
1.-Nombre de la variable Que se inicializo en R1= Nombre, variable, variable R1 + Valor variable
Indicar el nmero de incremento. Ejemplo: A=A+ 2.-Nombre variable ++ R1= El incremento es una unidad Ejemplo A=A++
20
I <= 50
SI
NO
PROCESO
I+1
I+1
NO
I > 50
SI
VARIABLE
Es un nombre asociado a un elemento cuyo valor puede cambiar durante la ejecucin de un programa.
21
CARACTERSTICAS Antes de usar la variable, esta debe se declarada de acuerdo al tipo que va almacenar No debe de iniciar con nmeros o smbolos No debe de tener caracteres especiales @, #, ?,) No debe da haber espacios entre letras Tal y como y fue declarada debe mandarse llamar por que se distingue
TIPOS
GLOBALES: se declara antes del inicio del programa y despus de las libreras. Son reconocidas en todo el programa
LOCALES Estn dentro de una funcin o debajo del inicio del programa Son reconocidas solo en el bloque / modulo donde fueron declaradas
CMO SE INICIALIZA UNA VARIABLE? Una variable puede ser inicializada en el momento en que se declara o despus de ser declarada.
22
PROGRAMADOR
RAZONAR
PROGRAMA
ESTRUCTURA DE UN PROGRAMA EN C
1.-LIBRERIAS Estas son funciones que se utilizan Para hacer uso de algunas palabras reservadas Y verificadas las sintaxis de estas. #Include </nombre de librera>/ #Include <stadio.h> 2.-VARIABLES Globales Y FUNCIONES Es donde se extiende el punto de la variable en el que se define hasta el fin del programa 3.-INICIO DEL PROGRAMA 4.-VARIABLES LOCALES 5.-CONJUNTO DE INSTRUCCIONES O ACCIONES 6.-FIN DE PROGRAMA 7.-FUNCION
23
CONCLUSIN
Al realizar este libro electrnico nos dimos cuenta de que al lector y a nosotros como estudiantes nos servir y ser de mucha utilidad ya que hizo que repasramos y comprendiramos los temas ya vistos que esperemos que el que lo pueda observar comprenda y le sea de mucha utilidad, ya que contiene los temas bsicos de lenguajes de programacin tambin contiene algunos ejemplos de algoritmos smbolos bsicos y sus significados, pruebas de escritorios etc. El punto aqu es que el lector encuentre algunas respuestas a sus dudas de forma clara y concisa para que sea til en alguna tarea requerida esperemos y le sea til
24