SlideShare una empresa de Scribd logo
1 de 24
UNIVERSIDAD DE PANAMÁ
CENTRO REGIONAL UNIVERSITARIO DE BOCAS DEL TORO
ANEXO DE CHIRIQUÍ GRANDE
FACULTAD DE INFORMÁTICA
MATERIA
INFORMÁTICA
TEMA
LENGUAJE DE PROGRAMACIÓN
PROFESOR
AARON CEDEÑO
ELABORADO POR
KATHERINE GONZÁLEZ 4-752-1261
ALICIA JARAMILLO 1-700-881
EFIGENIA MORALES 1-713-342
AÑO I
FECHA DE ENTREGA
21/4/2017
ÍNDICE
HOJA DE PRESENTACIÓN
ÍNDICE
INTRODUCCIÓN
I. LENGUAJE DE PROGRAMACIÓN…………………….4
II. CONCEPTO……………………………………………….4
III. NIVELES DE LENGUAJE………………………………..5
IV. PROGRAMAS TRADUCTORES, COMPILADORES
DE MÁQUINAS ENSAMBLADORES………………………9
V. TÉCNICAS DE PROGRAMA SÍMBOLOS Y REGLAS
DE DIAGRAMA DE FLUJO…………………………….13
VI. FASES EN LA RESOLUCIÓN DE PROBLEMAS DE
PROGRAMACIÓN……………………………………...19
CONCLUSIÓN……………………………………….…23
BIBLIOGRAFÍA…………………………………………24
INTRODUCCIÓN
El ser humano para comunicarse uno al otro necesita un lenguaje que le permita
transmitir o recibir una información.
En general, para comunicar algo siempre se usa un lenguaje.
La informática no queda excluida del uso de lenguajes, ya que estos son la
manera de especificar las acciones que se desea sean realizadas en la
computadora.
Y es precisamente lo que en este trabajo de investigación presentaremos sobre
los aspectos más importantes del lenguaje de programación, los diferentes tipos
de niveles, como también los programas traductores, las técnicas de programación
y las fases de resolución de problemas de programación.
.
Los lenguajes de programación están destinados a distintos ámbitos, dependiendo
de sus características que simplifican algunas tareas y complejizan otras.
No hay un único tipo de lenguajes, sino que se clasifican según las características
que posean y según el paradigma y conceptos que soporten.
Esperamos que este trabajo cumpla con los objetivos señalado por nuestro
profesor.
I.LENGUAJE DE PROGRAMACIÓN.
II.CONCEPTO.
Un lenguaje de programación es un lenguaje formal diseñado para realizar
procesos que pueden ser llevados a cabo por máquinas como las computadoras.
Pueden usarse para crear programas que controlen el comportamiento físico y
lógico de una máquina, para expresar algoritmos con precisión, o como modo de
comunicación humana.1
Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que
definen su estructura y el significado de sus elementos y expresiones. Al proceso
por el cual se escribe, se prueba, se depura, se compila (de ser necesario) y se
mantiene el código fuente de un programa informático se le llama programación.
También la palabra programación se define como el proceso de creación de un
programa de computadora, mediante la aplicación de procedimientos lógicos, a
través de los siguientes pasos:
• El desarrollo lógico del programa para resolver un problema en particular.
• Escritura de la lógica del programa empleando un lenguaje de
programación específico (codificación del programa).
• Ensamblaje o compilación del programa hasta convertirlo en lenguaje de
máquina.
• Prueba y depuración del programa.
• Desarrollo de la documentación.
III. NIVELES DE LENGUAJE
Los lenguajes de programación se clasifican por su nivel de abstracción del
procesador, en este caso la abstracción es un principio por el cual se aísla toda
aquella información que no es resulta relevante a un determinado nivel de
conocimiento.
 Lenguaje de bajo nivel
Es el que proporciona poca o ninguna abstracción del
microprocesador de un ordenador. Consecuentemente
es fácilmente trasladado a lenguaje de máquina.
En general se utiliza este tipo de lenguaje para
programar controladores (drivers).
Es aquel lenguaje que para su programa utiliza nomónico para representar a una
instrucción que entenderá la computadora, también se le llama lenguaje
ensamblador.
Ventajas
Mayor adaptación al equipo.
Posibilidad de obtener la máxima velocidad con mínimo uso de memoria.
Inconvenientes
Imposibilidad de escribir código independiente de la máquina.
Mayor dificultad en la programación y en la comprensión de los programas.
El programador debe conocer más de un centenar de instrucciones.
Es necesario conocer en detalle la arquitectura de la máquina.
Características
Se trabaja a nivel de instrucciones, es decir, su programación es al más fino
detalle.
Está orientado a la máquina.
 Lenguaje de medio nivel es un lenguaje de programación informática
como el lenguaje C, que se encuentran entre los
lenguajes de alto nivel y Los lenguajes de bajo
nivel.
Suelen ser clasificados muchas veces de alto
nivel, pero permiten ciertos manejos de bajo nivel.
Son precisos para ciertas aplicaciones como la
creación de sistemas operativos, ya que permiten
un manejo abstracto (independiente de la máquina, a diferencia del ensamblador),
pero sin perder mucho del poder y eficiencia que tienen los lenguajes de bajo
nivel.
Una característica distintiva, por ejemplo, que convierte a C en un lenguaje de
medio nivel y al Pascal en un lenguaje de alto nivel es que en el primero es posible
manejar las letras como si fueran números (en Pascal no), y por el contrario en
Pascal es posible concatenar las cadenas de caracteres con el operador suma y
copiarlas con la asignación (en C es el usuario el responsable de llamar a las
funciones correspondientes).
Una de las características más peculiares del lenguaje de programación C; es el
uso de "apuntadores", los cuales son muy útiles en la implementación de
algoritmos como Listas ligadas, Tablas Hash y algoritmos de búsqueda y
ordenamiento que para otros lenguajes de programación (como Java por ejemplo)
les suele ser un poco más complicado implementar
Los lenguajes de alto nivel
Se caracterizan por expresar los algoritmos de una manera adecuada a la
capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las
máquinas.
En los primeros lenguajes de alto nivel la limitación era que se orientaban a un
área específica y sus instrucciones requerían de una sintaxis predefinida. Se
clasifican como lenguajes procedimentales.
Otra limitación de los lenguajes de alto nivel es que se requiere de ciertos
conocimientos de programación para realizar las secuencias de instrucciones
lógicas.
Los lenguajes de muy alto nivel se crearon para que el usuario común pudiese
solucionar tal problema de procesamiento de datos de una manera más fácil y
rápida.
Por esta razón, a finales de los años 1950 surgió un nuevo tipo de lenguajes de
programación que evitaba estos inconvenientes, a costa de ceder un poco en las
ventajas. Estos lenguajes se llaman "de tercera generación" o "de alto nivel", en
contraposición a los "de bajo nivel" o "de nivel próximo a la máquina".
Ventajas
La programación en un lenguaje de alto nivel tiene ciertas ventajas:
Genera un código más sencillo y comprensible.
Escribir un código válido para diversas máquinas y, posiblemente, sistemas
operativos.
Inconvenientes
Reducción de velocidad al ceder el trabajo de bajo nivel a la máquina.
Algunos requieren que la máquina cliente posea una determinada plataforma.
Lenguajes de bajo nivel
Código máquina
Ensamblador
Lenguajes de medio nivel
BCPL
C
Lenguajes de alto nivel
ADA
ALGOL
BASIC
Clipper
Cobol
C++
FORTH
Fortran
Haskell
Informix 4gl
Java
Lexico (con códigos en castellano o sinónimos en otros idiomas)
Lisp
Logo
Modula
PASCAL
Prolog
RPG
Visual Basic.
IV. PROGRAMAS TRADUCTORES COMPILADORES, DE MÁQUINA,
ENSAMBLADORES.
Traductores de lenguaje
Son programas que traducen a su vez los
programas fuente escritos en lenguajes de
alto nivel a código máquina.
Los traductores se dividen en:
 Compiladores
 Interpretes
Intérpretes
Un intérprete es un traductor que toma un programa fuente, lo traduce y a
continuación lo ejecuta (dicho programa por medio de la computadora desarrolla
una tarea específica).
Un lenguaje que soporte un traductor de tipo intérprete se denomina lenguaje
interpretado. BASIC es el modelo por excelencia interpretado.
Los programas fuente en BASIC se escriben con ayuda de un programa
denominado editor que suele venir incorporado al programa intérprete.
Compiladores
Un compilador es un programa que traduce los programas fuente escritos en
lenguajes de alto nivel a lenguaje máquina.
Los programas escritos en lenguajes de alto nivel (en el editor del lenguaje) se
llaman programas fuente y el programa traducido programa objeto o código objeto.
El compilador traduce (sentencia a sentencia) el programa fuente.
Lenguajes compiladores típicos son: PASCAL, COBOL, C..
Fases de la compilación
La compilación es el proceso de la traducción de programas fuente a programas
objeto.
El programa objeto obtenido de la compilación no ha sido traducido normalmente a
código máquina sino a ensamblador. Para conseguir el programa máquina real se
debe utilizar un programa llamado montador o enlazador (linker). El proceso de
montaje conduce a un programa en lenguaje máquina directamente ejecutable:
Por ejemplo:
El proceso de ejecución de un Programa en C++ tiene los siguientes pasos:
1. Escritura del programa fuente con un editor (programa que permite a
una computadora actuar de modo similar a una máquina de escribir
electrónica) y guardarlo en un dispositivo de almacenamiento (un disco).
2. Introducir el programa fuente en memoria.
3. Compilar el programa con el compilador C++.
4. Verificar y corregir errores de compilación (listado de errores).
5. Obtención del programa objeto.
6. El montador obtiene el programa ejecutable.
7. Se ejecuta el programa y si no existen errores, se tendrá la salida del
mismo.
V. TÉCNICAS DE PROGRAMA SÍMBOLO Y REGLAS DEL DIAGRAMA DE
FLUJO
- Diagramas de flujo:
Son herramientas gráficas para la representación visual y gráfica de algoritmos,
compuestos por una serie de símbolos icónicos unidos por flechas.
Características:
 Los símbolos representan acciones o funciones en el programa.
 Las flechas representan el orden de realización de las acciones o
funciones, marcando el sentido o flujo lógico del algoritmo.
 Cada símbolo tendrá al menos una flecha que conduzca a él y una flecha
que parta de él, a excepción de los terminadores y conectores.
 Se leen de arriba a abajo y de izquierda a derecha.
Sus principales ventajas son que al ser visuales son muy sencillos de entender y
que utilizan símbolos estándar.
Su mayor desventaja es la dificultad de mantenimiento y actualización, puesto
que deben utilizarse editores gráficos.
Los símbolos están normalizados por las organizaciones de estandarización
internacionales ANSI (American National Standar Institute) e ISO (International
Standard Organization) y los más utilizados son los siguientes:
NORMAS O REGLAS PARA LA CREACIÓN DE DIAGRAMAS DE FLUJO
1. Los diagramas de flujo se escriben de arriba abajo y de izquierda a derecha.
2. Todo símbolo (excepto las líneas de flujo) llevará en su interior información que
indique su función exacta y unívoca.
EJEMPLOS
3. Un elemento del diagrama no puede tener más de una salida si no es un
elemento de decisión. Existen excepciones que veremos en su debido momento.
EJEMPLOS
4. Las líneas de flujo no pueden cruzarse.
EJEMPLOS
EJERCICIO
Crear el diagrama de flujo que proporcione el volumen de un cilindro dados su
altura y diámetro.
SOLUCIÓN
También hay una serie de símbolos secundarios que son:
Otro ejemplo de un diagrama de flujo para una operación sencilla. Imaginemos
que tenemos una lámpara o bombilla y queremos hacer el diagrama de flujo para
saber que hacer cuando la lámpara no funciona.
¿Hacemos-otro?
Bueno vamos hacer uno que nos muestre el resultado del área de un triángulo en
pantalla.
Como ves, en este ni siquiera hemos puesto las operaciones dentro de los
símbolos, ya que, con la forma del símbolo ya se entiende.
VI. FASES EN LA RESOLUCION DE PROBLEMAS DE PROGRAMACIÓN
Cuando nos proponemos resolver problemas en programación siempre
pasamos directamente al computador y empezamos a escribir código sin antes
haber analizado en lo más mínimo el problema, o bueno lo vamos analizando y
directamente vamos escribiendo el código y pues en algunos casos esta práctica
funciona, claro está, cuando los problemas son sencillos o cuando eres un
programador experimentado, no así con problemas más complejos y más aún
cuando estas empezando a programar.
A veces pensamos que con hacer las cosas directamente vamos a ganar más
tiempo, pero en realidad no es así, muchas de las veces el tiempo que se lleva
programando un problema directamente sin haber hecho un análisis previo, es el
doble o triple que si hubiésemos hecho previamente un análisis, por lo general se
cometen muchos errores, que a la larga perdemos tiempo.
Un buen hábito y como buenos programadores es la de llevar una metodología
para solucionar un problema por más mínimo que este sea. Es por eso que esta
vez vamos a ver algunos pasos que debemos seguir para resolver un problema en
programación y básicamente la idea es convertirlo en un hábito cada vez que
vayamos a programar.
1. ANÁLISIS PREVIO DEL PROBLEMA
En esta etapa se debe definir y tener claro lo que
el programa tiene que hacer junto con las tareas
que debe realizar para llevar a cabo la solución,
qué datos necesito para realizar la tareas, que
formato deben tener los datos de entrada, de
donde provienen los datos de entrada, como se
obtienen esos datos, cómo interactúan los datos
entre sí para obtener el resultado, muy
importante tener claro cuál será el resultado que
se desea obtener, tampoco dejar de lado las restricciones que puede haber al
momento de procesar los datos..
De igual forma se debe analizar todos los escenarios que pueden darse ya que un
cambio de escenario puede variar el resultado final del programa, siempre vale la
pena cuestionarse y hacer la pregunta: y si pasa esto o aquello? qué
comportamiento tomaría el programa.
Para clarificar dudas se debe pedir formatos (formas de presentación de los datos
o de donde se obtienen los datos cuando se hacen de forma manual), fórmulas,
realizar ejemplos y verificar los resultados.
Básicamente en este punto o fase se debe recoger todos los requerimientos y
especificaciones del problema.
Este punto debe ser uno de los más importantes y críticos de la resolución de
problemas ya que un mal análisis lleva a un mal diseño y posterior a un mal
resultado.
En lo personal no importa el tiempo que demores en esta etapa, la idea es que
quede bien claro todo, la primera vez puede que te demores un montón pero a
medida que lo practicas vas cogiendo experiencia y si lo tomas como hábito en las
próximas veces lo harás aún más rápido.
2. DISEÑO DEL ALGORITMO
Una vez que tenemos claro el
problema, después de haber definido
todas las entradas y salidas que va
tener el programa, también las tareas
a realizar, es hora de diseñar el
algoritmo y que irá de acuerdo a
todas las especificaciones anteriores
y posteriormente será implementado en un lenguaje de programación para ser
ejecutado por la computadora.
El algoritmo se lo puede hacer de cualquier forma: Pseudocódigo o Diagrama de
Flujo, la idea principal es que sea entendible, y no solo por el que lo diseñó si no
por cualquier persona.
En conclusión en la etapa anterior se define qué es lo que hará el programa, en
esta fase, se define como lo hará.
Algo importante de este diseño es que sea entendible para el programador que lo
va implementar.
3. CONFIGURACIÓN DEL ENTORNO DE DESARROLLO Y CODIFICACIÓN
Esta etapa consiste en transcribir o adaptar el
algoritmo a un lenguaje de programación, se
tendrá que adaptar todos los pasos diseñados
en el algoritmo con sentencias y sintaxis
propias del lenguaje.
Verificar errores, organizar el código y
comentarlo, son buenas prácticas que hacen
programas más legibles y facilitan la depuración.
Previamente a la codificación se debe tener configurado el entorno de
trabajo: IDEs, librerías, Frameworks (aunque este último no lo recomiendo si
estas empezando a programar, es mejor aprender las cosas más básicas los
fundamentos, todo a mano primero y luego los frameworks) y luego pasar el
algoritmo al lenguaje de programación.
4. COMPILACIÓN Y PRUEBAS
La fase de compilación permitirá detectar errores en
tiempo de compilación, ejecución y lógicos, y en el
caso de Java se generará uno o varios archivos
bytecode que serán ejecutados por la computadora.
En esta fase también es necesario realizar pruebas con
una gran cantidad de datos para encontrar posibles
errores y corregirlos.
5. DOCUMENTACIÓN Y MANTENIMIENTO
Por últimos se debe tener una documentación de
todos los pasos hasta llegar a la solución del
problema, a veces es un poco tedioso esta fase
pero también es muy importante ya que muchas
veces suceden modificaciones con el pasar del
tiempo y estas se hace en algunos casos por otros
programadores diferentes a los que lo crearon (que
incluso cuando uno mismo va ha modificar no se
acuerda que rayos hacia ese código, me ha pasado),
y cuando un programa es pobre en documentación
este proceso de modificación es totalmente
complejo.
CONCLUSIONES.
 Un lenguaje de programación es un lenguaje formal diseñado para realizar
procesos que pueden ser llevados a cabo por máquinas como las
computadoras.
 Existen tres niveles de lenguajes.
Lenguaje de máquina-
Lenguajes de Programación de Bajo Nivel: El lenguaje ensamblador fue el
primer lenguaje de programación de bajo nivel que trato de sustituir el
lenguaje máquina por otro mucho más parecido al de los seres humanos.
Lenguajes de Programación de Alto Nivel: Este lenguaje es independientes
de la máquina, lo podemos usar en cualquier computador con muy pocas
modificaciones o sin ellas, son muy similares al lenguaje humano.
Esta investigación nos permite desarrollar un sentido crítico de los
lenguajes de programación, y a la vez conocer los diferentes programas de
traductores y compiladores. Conocer las diferentes técnicas para realizar un
diagrama de flujo.
Esta investigación servirá para evaluar correctamente los lenguajes de
programación, determinando las ventajas y desventajas que cada uno de ellos
presenta, a partir de identificación de estos por el tipo de lenguajes de
programación.
Esperamos que al ser evaluado este trabajo hallamos cumplido con lo
recomendado por el profesor ya que el mismo nos servirá para futuros trabajos.
BIBLIOGRAFÍA
1- http://www.monografias.com/trabajos73/tipos-lenguajes-
programacion/tipos-lenguajes-programacion2.shtml#ixzz4eq4DaNLJ
2- http://www.monografias.com/trabajos73/tipos-lenguajes-
programacion/tipos-lenguajes-programacion.shtml#ixzz4eq3zpxos
3- http://www.monografias.com/trabajos73/tipos-lenguajes-programacion/tipos-
lenguajes-programacion.shtml#ixzz4eq3s02bx

Más contenido relacionado

La actualidad más candente

Von neumann vs harvard
Von neumann vs harvardVon neumann vs harvard
Von neumann vs harvardManzelot
 
Diagrama de Flujos Ejemplos.
Diagrama de Flujos Ejemplos.Diagrama de Flujos Ejemplos.
Diagrama de Flujos Ejemplos.luismarlmg
 
Tabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetosTabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetosFrancisco Javier Canizales Vazquez
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programaciónnormaroldano
 
automatas finitos
 automatas finitos automatas finitos
automatas finitosAnel Sosa
 
Lenguaje de programación: Pascal
Lenguaje de programación: PascalLenguaje de programación: Pascal
Lenguaje de programación: PascalCarola511
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++Rosbelia Balza
 
¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?grachika
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesIsrael Castillo Cruz
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)YJGG
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosAlvaro Enrique Ruano
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionBoris Salleg
 
EJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOSEJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOS1002pc3
 
Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)irvingsalazar2
 
PARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOPARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOFredy Olaya
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador SintácticoPablo Guerra
 

La actualidad más candente (20)

Von neumann vs harvard
Von neumann vs harvardVon neumann vs harvard
Von neumann vs harvard
 
Diagrama de Flujos Ejemplos.
Diagrama de Flujos Ejemplos.Diagrama de Flujos Ejemplos.
Diagrama de Flujos Ejemplos.
 
Tabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetosTabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetos
 
Sintaxis del lenguaje c++
Sintaxis del lenguaje c++Sintaxis del lenguaje c++
Sintaxis del lenguaje c++
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programación
 
Estructura Repetitiva MIENTRAS (While) con PSeInt
Estructura Repetitiva MIENTRAS (While) con PSeIntEstructura Repetitiva MIENTRAS (While) con PSeInt
Estructura Repetitiva MIENTRAS (While) con PSeInt
 
automatas finitos
 automatas finitos automatas finitos
automatas finitos
 
Lenguaje de programación: Pascal
Lenguaje de programación: PascalLenguaje de programación: Pascal
Lenguaje de programación: Pascal
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
 
¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretes
 
Tutorial de JFLAP
Tutorial de JFLAPTutorial de JFLAP
Tutorial de JFLAP
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodos
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
EJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOSEJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOS
 
Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
PARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOPARADIGMA IMPERATIVO
PARADIGMA IMPERATIVO
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 

Similar a LENGUAJE DE PROGRAMACION. INVESTIGACION

Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretadorFrancisco Leal
 
Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de AlgoritmosTaniaCalle
 
Presentación lenguajedeprogramacion
Presentación lenguajedeprogramacionPresentación lenguajedeprogramacion
Presentación lenguajedeprogramacionmichelledelgado97
 
Especialidad presentacion taller sena
Especialidad presentacion taller senaEspecialidad presentacion taller sena
Especialidad presentacion taller senaNat Alia
 
Especialidad presentacion taller sena
Especialidad presentacion taller senaEspecialidad presentacion taller sena
Especialidad presentacion taller senadejuansi2
 
Especialidad presentacion taller sena
Especialidad presentacion taller senaEspecialidad presentacion taller sena
Especialidad presentacion taller senazeepulveediita20
 
Especialidad presentacion taller sena
Especialidad presentacion taller senaEspecialidad presentacion taller sena
Especialidad presentacion taller senazeepulveediita20
 
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADOCONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADOadark
 
Introduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacionIntroduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacionlupitagarcia07
 
LENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACIONLENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACIONBryan Perdomo
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programaciónanderson03230812
 
QUE ES PROGRAMACION DE SISTEMAS
QUE ES PROGRAMACION DE SISTEMASQUE ES PROGRAMACION DE SISTEMAS
QUE ES PROGRAMACION DE SISTEMASsergiosalazarcano
 
presentacion I BTP
presentacion I BTPpresentacion I BTP
presentacion I BTPcesia_97
 
Universidad de panamá kathia j
Universidad de panamá kathia jUniversidad de panamá kathia j
Universidad de panamá kathia jJoel Boya
 
Tema 1.3.- Programación
Tema 1.3.- ProgramaciónTema 1.3.- Programación
Tema 1.3.- ProgramaciónYenny Salazar
 
Tipos de lenguaje de programacion
Tipos de lenguaje de programacionTipos de lenguaje de programacion
Tipos de lenguaje de programacionLy Andre
 
Introduccion a la prgrmacion.
Introduccion a la prgrmacion.Introduccion a la prgrmacion.
Introduccion a la prgrmacion.Vladimir Pomares
 

Similar a LENGUAJE DE PROGRAMACION. INVESTIGACION (20)

Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de Algoritmos
 
Presentación lenguajedeprogramacion
Presentación lenguajedeprogramacionPresentación lenguajedeprogramacion
Presentación lenguajedeprogramacion
 
Especialidad presentacion taller sena
Especialidad presentacion taller senaEspecialidad presentacion taller sena
Especialidad presentacion taller sena
 
Especialidad presentacion taller sena
Especialidad presentacion taller senaEspecialidad presentacion taller sena
Especialidad presentacion taller sena
 
Especialidad presentacion taller sena
Especialidad presentacion taller senaEspecialidad presentacion taller sena
Especialidad presentacion taller sena
 
Especialidad presentacion taller sena
Especialidad presentacion taller senaEspecialidad presentacion taller sena
Especialidad presentacion taller sena
 
Programeichon de milagro
Programeichon de milagroProgrameichon de milagro
Programeichon de milagro
 
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADOCONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
 
Introduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacionIntroduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacion
 
LENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACIONLENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACION
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Tema1 b
Tema1 bTema1 b
Tema1 b
 
QUE ES PROGRAMACION DE SISTEMAS
QUE ES PROGRAMACION DE SISTEMASQUE ES PROGRAMACION DE SISTEMAS
QUE ES PROGRAMACION DE SISTEMAS
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
presentacion I BTP
presentacion I BTPpresentacion I BTP
presentacion I BTP
 
Universidad de panamá kathia j
Universidad de panamá kathia jUniversidad de panamá kathia j
Universidad de panamá kathia j
 
Tema 1.3.- Programación
Tema 1.3.- ProgramaciónTema 1.3.- Programación
Tema 1.3.- Programación
 
Tipos de lenguaje de programacion
Tipos de lenguaje de programacionTipos de lenguaje de programacion
Tipos de lenguaje de programacion
 
Introduccion a la prgrmacion.
Introduccion a la prgrmacion.Introduccion a la prgrmacion.
Introduccion a la prgrmacion.
 

Último

Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 

Último (20)

Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 

LENGUAJE DE PROGRAMACION. INVESTIGACION

  • 1. UNIVERSIDAD DE PANAMÁ CENTRO REGIONAL UNIVERSITARIO DE BOCAS DEL TORO ANEXO DE CHIRIQUÍ GRANDE FACULTAD DE INFORMÁTICA MATERIA INFORMÁTICA TEMA LENGUAJE DE PROGRAMACIÓN PROFESOR AARON CEDEÑO ELABORADO POR KATHERINE GONZÁLEZ 4-752-1261 ALICIA JARAMILLO 1-700-881 EFIGENIA MORALES 1-713-342 AÑO I FECHA DE ENTREGA 21/4/2017
  • 2. ÍNDICE HOJA DE PRESENTACIÓN ÍNDICE INTRODUCCIÓN I. LENGUAJE DE PROGRAMACIÓN…………………….4 II. CONCEPTO……………………………………………….4 III. NIVELES DE LENGUAJE………………………………..5 IV. PROGRAMAS TRADUCTORES, COMPILADORES DE MÁQUINAS ENSAMBLADORES………………………9 V. TÉCNICAS DE PROGRAMA SÍMBOLOS Y REGLAS DE DIAGRAMA DE FLUJO…………………………….13 VI. FASES EN LA RESOLUCIÓN DE PROBLEMAS DE PROGRAMACIÓN……………………………………...19 CONCLUSIÓN……………………………………….…23 BIBLIOGRAFÍA…………………………………………24
  • 3. INTRODUCCIÓN El ser humano para comunicarse uno al otro necesita un lenguaje que le permita transmitir o recibir una información. En general, para comunicar algo siempre se usa un lenguaje. La informática no queda excluida del uso de lenguajes, ya que estos son la manera de especificar las acciones que se desea sean realizadas en la computadora. Y es precisamente lo que en este trabajo de investigación presentaremos sobre los aspectos más importantes del lenguaje de programación, los diferentes tipos de niveles, como también los programas traductores, las técnicas de programación y las fases de resolución de problemas de programación. . Los lenguajes de programación están destinados a distintos ámbitos, dependiendo de sus características que simplifican algunas tareas y complejizan otras. No hay un único tipo de lenguajes, sino que se clasifican según las características que posean y según el paradigma y conceptos que soporten. Esperamos que este trabajo cumpla con los objetivos señalado por nuestro profesor.
  • 4. I.LENGUAJE DE PROGRAMACIÓN. II.CONCEPTO. Un lenguaje de programación es un lenguaje formal diseñado para realizar procesos que pueden ser llevados a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana.1 Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila (de ser necesario) y se mantiene el código fuente de un programa informático se le llama programación. También la palabra programación se define como el proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de los siguientes pasos: • El desarrollo lógico del programa para resolver un problema en particular. • Escritura de la lógica del programa empleando un lenguaje de programación específico (codificación del programa).
  • 5. • Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina. • Prueba y depuración del programa. • Desarrollo de la documentación. III. NIVELES DE LENGUAJE Los lenguajes de programación se clasifican por su nivel de abstracción del procesador, en este caso la abstracción es un principio por el cual se aísla toda aquella información que no es resulta relevante a un determinado nivel de conocimiento.  Lenguaje de bajo nivel Es el que proporciona poca o ninguna abstracción del microprocesador de un ordenador. Consecuentemente es fácilmente trasladado a lenguaje de máquina. En general se utiliza este tipo de lenguaje para programar controladores (drivers). Es aquel lenguaje que para su programa utiliza nomónico para representar a una instrucción que entenderá la computadora, también se le llama lenguaje ensamblador. Ventajas Mayor adaptación al equipo. Posibilidad de obtener la máxima velocidad con mínimo uso de memoria.
  • 6. Inconvenientes Imposibilidad de escribir código independiente de la máquina. Mayor dificultad en la programación y en la comprensión de los programas. El programador debe conocer más de un centenar de instrucciones. Es necesario conocer en detalle la arquitectura de la máquina. Características Se trabaja a nivel de instrucciones, es decir, su programación es al más fino detalle. Está orientado a la máquina.  Lenguaje de medio nivel es un lenguaje de programación informática como el lenguaje C, que se encuentran entre los lenguajes de alto nivel y Los lenguajes de bajo nivel. Suelen ser clasificados muchas veces de alto nivel, pero permiten ciertos manejos de bajo nivel. Son precisos para ciertas aplicaciones como la creación de sistemas operativos, ya que permiten un manejo abstracto (independiente de la máquina, a diferencia del ensamblador), pero sin perder mucho del poder y eficiencia que tienen los lenguajes de bajo nivel. Una característica distintiva, por ejemplo, que convierte a C en un lenguaje de medio nivel y al Pascal en un lenguaje de alto nivel es que en el primero es posible manejar las letras como si fueran números (en Pascal no), y por el contrario en Pascal es posible concatenar las cadenas de caracteres con el operador suma y copiarlas con la asignación (en C es el usuario el responsable de llamar a las funciones correspondientes).
  • 7. Una de las características más peculiares del lenguaje de programación C; es el uso de "apuntadores", los cuales son muy útiles en la implementación de algoritmos como Listas ligadas, Tablas Hash y algoritmos de búsqueda y ordenamiento que para otros lenguajes de programación (como Java por ejemplo) les suele ser un poco más complicado implementar Los lenguajes de alto nivel Se caracterizan por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las máquinas. En los primeros lenguajes de alto nivel la limitación era que se orientaban a un área específica y sus instrucciones requerían de una sintaxis predefinida. Se clasifican como lenguajes procedimentales.
  • 8. Otra limitación de los lenguajes de alto nivel es que se requiere de ciertos conocimientos de programación para realizar las secuencias de instrucciones lógicas. Los lenguajes de muy alto nivel se crearon para que el usuario común pudiese solucionar tal problema de procesamiento de datos de una manera más fácil y rápida. Por esta razón, a finales de los años 1950 surgió un nuevo tipo de lenguajes de programación que evitaba estos inconvenientes, a costa de ceder un poco en las ventajas. Estos lenguajes se llaman "de tercera generación" o "de alto nivel", en contraposición a los "de bajo nivel" o "de nivel próximo a la máquina". Ventajas La programación en un lenguaje de alto nivel tiene ciertas ventajas: Genera un código más sencillo y comprensible. Escribir un código válido para diversas máquinas y, posiblemente, sistemas operativos. Inconvenientes Reducción de velocidad al ceder el trabajo de bajo nivel a la máquina. Algunos requieren que la máquina cliente posea una determinada plataforma. Lenguajes de bajo nivel Código máquina Ensamblador Lenguajes de medio nivel BCPL C Lenguajes de alto nivel ADA ALGOL BASIC Clipper Cobol
  • 9. C++ FORTH Fortran Haskell Informix 4gl Java Lexico (con códigos en castellano o sinónimos en otros idiomas) Lisp Logo Modula PASCAL Prolog RPG Visual Basic. IV. PROGRAMAS TRADUCTORES COMPILADORES, DE MÁQUINA, ENSAMBLADORES. Traductores de lenguaje Son programas que traducen a su vez los programas fuente escritos en lenguajes de alto nivel a código máquina. Los traductores se dividen en:  Compiladores  Interpretes Intérpretes Un intérprete es un traductor que toma un programa fuente, lo traduce y a
  • 10. continuación lo ejecuta (dicho programa por medio de la computadora desarrolla una tarea específica). Un lenguaje que soporte un traductor de tipo intérprete se denomina lenguaje interpretado. BASIC es el modelo por excelencia interpretado. Los programas fuente en BASIC se escriben con ayuda de un programa denominado editor que suele venir incorporado al programa intérprete. Compiladores Un compilador es un programa que traduce los programas fuente escritos en lenguajes de alto nivel a lenguaje máquina. Los programas escritos en lenguajes de alto nivel (en el editor del lenguaje) se llaman programas fuente y el programa traducido programa objeto o código objeto. El compilador traduce (sentencia a sentencia) el programa fuente. Lenguajes compiladores típicos son: PASCAL, COBOL, C.. Fases de la compilación La compilación es el proceso de la traducción de programas fuente a programas objeto. El programa objeto obtenido de la compilación no ha sido traducido normalmente a
  • 11. código máquina sino a ensamblador. Para conseguir el programa máquina real se debe utilizar un programa llamado montador o enlazador (linker). El proceso de montaje conduce a un programa en lenguaje máquina directamente ejecutable: Por ejemplo: El proceso de ejecución de un Programa en C++ tiene los siguientes pasos: 1. Escritura del programa fuente con un editor (programa que permite a una computadora actuar de modo similar a una máquina de escribir electrónica) y guardarlo en un dispositivo de almacenamiento (un disco). 2. Introducir el programa fuente en memoria. 3. Compilar el programa con el compilador C++. 4. Verificar y corregir errores de compilación (listado de errores). 5. Obtención del programa objeto. 6. El montador obtiene el programa ejecutable. 7. Se ejecuta el programa y si no existen errores, se tendrá la salida del mismo.
  • 12.
  • 13. V. TÉCNICAS DE PROGRAMA SÍMBOLO Y REGLAS DEL DIAGRAMA DE FLUJO - Diagramas de flujo: Son herramientas gráficas para la representación visual y gráfica de algoritmos, compuestos por una serie de símbolos icónicos unidos por flechas. Características:  Los símbolos representan acciones o funciones en el programa.  Las flechas representan el orden de realización de las acciones o funciones, marcando el sentido o flujo lógico del algoritmo.  Cada símbolo tendrá al menos una flecha que conduzca a él y una flecha que parta de él, a excepción de los terminadores y conectores.  Se leen de arriba a abajo y de izquierda a derecha. Sus principales ventajas son que al ser visuales son muy sencillos de entender y que utilizan símbolos estándar. Su mayor desventaja es la dificultad de mantenimiento y actualización, puesto que deben utilizarse editores gráficos. Los símbolos están normalizados por las organizaciones de estandarización internacionales ANSI (American National Standar Institute) e ISO (International Standard Organization) y los más utilizados son los siguientes: NORMAS O REGLAS PARA LA CREACIÓN DE DIAGRAMAS DE FLUJO 1. Los diagramas de flujo se escriben de arriba abajo y de izquierda a derecha. 2. Todo símbolo (excepto las líneas de flujo) llevará en su interior información que indique su función exacta y unívoca.
  • 14. EJEMPLOS 3. Un elemento del diagrama no puede tener más de una salida si no es un elemento de decisión. Existen excepciones que veremos en su debido momento. EJEMPLOS
  • 15. 4. Las líneas de flujo no pueden cruzarse. EJEMPLOS EJERCICIO Crear el diagrama de flujo que proporcione el volumen de un cilindro dados su altura y diámetro. SOLUCIÓN
  • 16.
  • 17. También hay una serie de símbolos secundarios que son:
  • 18. Otro ejemplo de un diagrama de flujo para una operación sencilla. Imaginemos que tenemos una lámpara o bombilla y queremos hacer el diagrama de flujo para saber que hacer cuando la lámpara no funciona. ¿Hacemos-otro? Bueno vamos hacer uno que nos muestre el resultado del área de un triángulo en pantalla. Como ves, en este ni siquiera hemos puesto las operaciones dentro de los símbolos, ya que, con la forma del símbolo ya se entiende.
  • 19. VI. FASES EN LA RESOLUCION DE PROBLEMAS DE PROGRAMACIÓN Cuando nos proponemos resolver problemas en programación siempre pasamos directamente al computador y empezamos a escribir código sin antes haber analizado en lo más mínimo el problema, o bueno lo vamos analizando y directamente vamos escribiendo el código y pues en algunos casos esta práctica funciona, claro está, cuando los problemas son sencillos o cuando eres un programador experimentado, no así con problemas más complejos y más aún cuando estas empezando a programar. A veces pensamos que con hacer las cosas directamente vamos a ganar más tiempo, pero en realidad no es así, muchas de las veces el tiempo que se lleva programando un problema directamente sin haber hecho un análisis previo, es el doble o triple que si hubiésemos hecho previamente un análisis, por lo general se cometen muchos errores, que a la larga perdemos tiempo. Un buen hábito y como buenos programadores es la de llevar una metodología para solucionar un problema por más mínimo que este sea. Es por eso que esta vez vamos a ver algunos pasos que debemos seguir para resolver un problema en programación y básicamente la idea es convertirlo en un hábito cada vez que vayamos a programar. 1. ANÁLISIS PREVIO DEL PROBLEMA En esta etapa se debe definir y tener claro lo que el programa tiene que hacer junto con las tareas que debe realizar para llevar a cabo la solución, qué datos necesito para realizar la tareas, que formato deben tener los datos de entrada, de donde provienen los datos de entrada, como se obtienen esos datos, cómo interactúan los datos entre sí para obtener el resultado, muy importante tener claro cuál será el resultado que
  • 20. se desea obtener, tampoco dejar de lado las restricciones que puede haber al momento de procesar los datos.. De igual forma se debe analizar todos los escenarios que pueden darse ya que un cambio de escenario puede variar el resultado final del programa, siempre vale la pena cuestionarse y hacer la pregunta: y si pasa esto o aquello? qué comportamiento tomaría el programa. Para clarificar dudas se debe pedir formatos (formas de presentación de los datos o de donde se obtienen los datos cuando se hacen de forma manual), fórmulas, realizar ejemplos y verificar los resultados. Básicamente en este punto o fase se debe recoger todos los requerimientos y especificaciones del problema. Este punto debe ser uno de los más importantes y críticos de la resolución de problemas ya que un mal análisis lleva a un mal diseño y posterior a un mal resultado. En lo personal no importa el tiempo que demores en esta etapa, la idea es que quede bien claro todo, la primera vez puede que te demores un montón pero a medida que lo practicas vas cogiendo experiencia y si lo tomas como hábito en las próximas veces lo harás aún más rápido.
  • 21. 2. DISEÑO DEL ALGORITMO Una vez que tenemos claro el problema, después de haber definido todas las entradas y salidas que va tener el programa, también las tareas a realizar, es hora de diseñar el algoritmo y que irá de acuerdo a todas las especificaciones anteriores y posteriormente será implementado en un lenguaje de programación para ser ejecutado por la computadora. El algoritmo se lo puede hacer de cualquier forma: Pseudocódigo o Diagrama de Flujo, la idea principal es que sea entendible, y no solo por el que lo diseñó si no por cualquier persona. En conclusión en la etapa anterior se define qué es lo que hará el programa, en esta fase, se define como lo hará. Algo importante de este diseño es que sea entendible para el programador que lo va implementar. 3. CONFIGURACIÓN DEL ENTORNO DE DESARROLLO Y CODIFICACIÓN Esta etapa consiste en transcribir o adaptar el algoritmo a un lenguaje de programación, se tendrá que adaptar todos los pasos diseñados en el algoritmo con sentencias y sintaxis propias del lenguaje. Verificar errores, organizar el código y comentarlo, son buenas prácticas que hacen programas más legibles y facilitan la depuración.
  • 22. Previamente a la codificación se debe tener configurado el entorno de trabajo: IDEs, librerías, Frameworks (aunque este último no lo recomiendo si estas empezando a programar, es mejor aprender las cosas más básicas los fundamentos, todo a mano primero y luego los frameworks) y luego pasar el algoritmo al lenguaje de programación. 4. COMPILACIÓN Y PRUEBAS La fase de compilación permitirá detectar errores en tiempo de compilación, ejecución y lógicos, y en el caso de Java se generará uno o varios archivos bytecode que serán ejecutados por la computadora. En esta fase también es necesario realizar pruebas con una gran cantidad de datos para encontrar posibles errores y corregirlos. 5. DOCUMENTACIÓN Y MANTENIMIENTO Por últimos se debe tener una documentación de todos los pasos hasta llegar a la solución del problema, a veces es un poco tedioso esta fase pero también es muy importante ya que muchas veces suceden modificaciones con el pasar del tiempo y estas se hace en algunos casos por otros programadores diferentes a los que lo crearon (que incluso cuando uno mismo va ha modificar no se acuerda que rayos hacia ese código, me ha pasado), y cuando un programa es pobre en documentación este proceso de modificación es totalmente complejo.
  • 23. CONCLUSIONES.  Un lenguaje de programación es un lenguaje formal diseñado para realizar procesos que pueden ser llevados a cabo por máquinas como las computadoras.  Existen tres niveles de lenguajes. Lenguaje de máquina- Lenguajes de Programación de Bajo Nivel: El lenguaje ensamblador fue el primer lenguaje de programación de bajo nivel que trato de sustituir el lenguaje máquina por otro mucho más parecido al de los seres humanos. Lenguajes de Programación de Alto Nivel: Este lenguaje es independientes de la máquina, lo podemos usar en cualquier computador con muy pocas modificaciones o sin ellas, son muy similares al lenguaje humano. Esta investigación nos permite desarrollar un sentido crítico de los lenguajes de programación, y a la vez conocer los diferentes programas de traductores y compiladores. Conocer las diferentes técnicas para realizar un diagrama de flujo. Esta investigación servirá para evaluar correctamente los lenguajes de programación, determinando las ventajas y desventajas que cada uno de ellos presenta, a partir de identificación de estos por el tipo de lenguajes de programación. Esperamos que al ser evaluado este trabajo hallamos cumplido con lo recomendado por el profesor ya que el mismo nos servirá para futuros trabajos.