SlideShare ist ein Scribd-Unternehmen logo
1 von 17
“CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO” 3.1 INTRODUCCIÓN A LA PROGRAMACIÓN
Definición de programa Un programa de computadora es un conjunto de instrucciones que producirán la ejecución de una determinada tarea. En esencia, un programa es un medio para conseguir un fin. El fin será probablemente definido como la información necesaria para solucionar un problema. El proceso de programación es, por consiguiente, un proceso de solución de problemas y el desarrollo de un programa requiere las siguientes fases:   Definición y análisis del problema Diseño de algoritmos Diagrama de flujo Diagrama N-S Pseudocódigo Codificación del programa Depuración y verificación del programa Documentación Mantenimiento
Definición de programación Programación es la técnica mediante la cual  se traducen los algoritmos a un lenguaje de programación como C, C++, C#, Pascal, Visual Basic, etc.
Definición de lenguaje de programación Un lenguaje de programación es un lenguaje que puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora. Consiste en un conjunto de reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos, respectivamente. Aunque muchas veces se usa lenguaje de programación y lenguaje informático como si fuesen sinónimos, no tiene por qué ser así, ya que los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como, por ejemplo, el HTML. Un lenguaje de programación permite a un programador especificar de manera precisa: sobre qué datos una computadora debe operar, cómo deben ser estos almacenados y transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural, tal como sucede con el lenguaje Léxico.
Definición de lenguaje de programación Los procesadores usados en las computadoras son capaces de entender y actuar según lo indican programas escritos en un lenguaje fijo llamado lenguaje de máquina. Todo programa escrito en otro lenguaje puede ser ejecutado de dos maneras: Mediante un programa que va adaptando las instrucciones conforme son encontradas. A este proceso se lo llama interpretar y a los programas que lo hacen se los conoce como intérpretes.  Traduciendo este programa al programa equivalente escrito en lenguaje de máquina. A ese proceso se lo llama compilar y al traductor se lo conoce como compilador.
Definición de lenguaje de programación Clasificación de los lenguajes de programación  Los lenguajes de programación se determinan según el nivel de abstracción, según la forma de ejecución y según el paradigma de programación que poseen cada uno de ellos y esos pueden ser: Lenguajes de bajo nivel Los lenguajes de bajo nivel son lenguajes de programación que se acercan al funcionamiento de una computadora. El lenguaje de más bajo nivel es, por excelencia, el código máquina. A éste le sigue el lenguaje ensamblador, ya que al programar en ensamblador se trabajan con los registros de memoria de la computadora de forma directa.
Definición de lenguaje de programación Lenguajes de medio nivel  Hay lenguajes de programación que son considerados por algunos expertos como lenguajes de medio nivel (como es el caso del lenguaje C) al tener ciertas características que los acercan a los lenguajes de bajo nivel pero teniendo, al mismo tiempo, ciertas cualidades que lo hacen un lenguaje más cercano al humano y, por tanto, de alto nivel. Lenguajes de alto nivel Los lenguajes de alto nivel son normalmente fáciles de aprender porque están formados por elementos de lenguajes naturales, como el inglés. En BASIC, el lenguaje de alto nivel más conocido, los comandos como "IF CONTADOR = 10 THEN STOP" pueden utilizarse para pedir a la computadora que pare si CONTADOR es igual a 10. Por desgracia para muchas personas esta forma de trabajar es un poco frustrante, dado que a pesar de que las computadoras parecen comprender un lenguaje natural, lo hacen en realidad de una forma rígida y sistemática.
Definición de lenguaje de programación Según la forma de ejecución:   Lenguajes compilados  Naturalmente, un programa que se escribe en un lenguaje de alto nivel también tiene que traducirse a un código que pueda utilizar la máquina. Los programas traductores que pueden realizar esta operación se llaman compiladores. Éstos, como los programas ensambladores avanzados, pueden generar muchas líneas de código de máquina por cada proposición del programa fuente. Se requiere una corrida de compilación antes de procesar los datos de un problema. Los compiladores son aquellos cuya función es traducir un programa escrito en un determinado lenguaje a un idioma que la computadora entienda (lenguaje máquina con código binario). Al usar un lenguaje compilado (como lo son los lenguajes del popular Visual Studio de Microsoft), el programa desarrollado nunca se ejecuta mientras haya errores, sino hasta que luego de haber compilado el programa, ya no aparecen errores en el código.
Definición de lenguaje de programación Lenguajes interpretados   Se puede también utilizar una alternativa diferente de los compiladores para traducir lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en forma permanente el código objeto que se produce durante la corrida de compilación para utilizarlo en una corrida de producción futura, el programador sólo carga el programa fuente en la computadora junto con los datos que se van a procesar. A continuación, un programa intérprete, almacenado en el sistema operativo del disco, o incluido de manera permanente dentro de la máquina, convierte cada proposición del programa fuente en lenguaje de máquina conforme vaya siendo necesario durante el proceso de los datos. No se graba el código objeto para utilizarlo posteriormente.
Definición de lenguaje de programación Lenguajes interpretados La siguiente vez que se utilice una instrucción, se le debe interpretar otra vez y traducir a lenguaje máquina. Por ejemplo, durante el procesamiento repetitivo de los pasos de un ciclo, cada instrucción del ciclo tendrá que volver a ser interpretado cada vez que se ejecute el ciclo, lo cual hace que el programa sea más lento en tiempo de ejecución (porque se va revisando el código en tiempo de ejecución) pero más rápido en tiempo de diseño (porque no se tiene que estar compilando a cada momento el código completo). El intérprete elimina la necesidad de realizar una corrida de compilación después de cada modificación del programa cuando se quiere agregar funciones o corregir errores; pero es obvio que un programa objeto compilado con antelación deberá ejecutarse con mucha mayor rapidez que uno que se debe interpretar a cada paso durante una corrida de producción.
Definición de lenguaje de programación Según el paradigma de programación: Lenguajes imperativos Lenguajes declarativos Funcionales Lógicos Lenguajes orientados a objetos  
Definición de lenguaje de programación En la Programación Orientada a Objetos (POO u OOP según siglas en inglés) se definen los programas en términos de "clases de objetos", objetos que son entidades que combinan estado (es decir, datos) comportamiento (esto es, procedimientos o métodos) e identidad (propiedad del objeto que lo diferencia del resto). La programación orientada a objetos expresa un programa como un conjunto de estos objetos, que colaboran entre ellos para realizar tareas. Esto permite hacer los programas módulos más fáciles de escribir, mantener y reutilizar.
Definición de lenguaje de programación Algunos lenguajes de programación
Introducción y orígenes del lenguaje C es un lenguaje de programación de empleo general, caracterizado por su concisión y por poseer un moderno flujo de control y estructuras de datos, así como un rico conjunto de operadores. No es un lenguaje de “muy alto nivel” ni “grande”, no está especializado en ninguna área particular de aplicación. En cambio su carencia de restricciones y su generalidad lo hacen más eficaz y conveniente para muchas tareas que otros lenguajes, supuestamente más potentes.   C fue diseñado originalmente para el sistema operativo UNIX en la PDP-11 de la DEC e implantado en ella por Dennis Ritchie. Tanto el sistema operativo como el compilador de C y prácticamente todos los programas de aplicación en UNIX se escribieron en C. También existen compiladores para otras máquinas, entre ellas IBM/370, Honeywell 6000 e Interdata 8/32. Sin embargo C no está ligado a un hardware o sistema en concreto, siendo fácil escribir programas que ejecuten tareas sin ningún cambio en cualquier máquina que soporta C.  
Introducción y orígenes del lenguaje C es un lenguaje de relativo “bajo nivel”. Esta tipificación no es peyorativa; simplemente significa que C trabaja con la misma clase de objetos que la mayoría de las computadoras: caracteres, números y direcciones, que pueden ser combinados con operadores aritméticos y lógicos, utilizados normalmente en las máquinas. C no contiene operaciones para trabajar directamente con objetos compuestos, tales como cadenas de caracteres, conjuntos, listas, arreglos o vectores. C sólo ofrece sentencias de control de flujo sencillas, secuenciales, de selección de repetición, bloques y subprogramas. Muchas de las ideas principales de C provienen de un lenguaje mucho más antiguo: el lenguaje BCPL, inventado por Martin Richards. La influencia de BCPL le llega indirectamente a través del lenguaje B, escrito por Ken Thompson en 1970 para el primer sistema UNIX en una PDP-7.  
Introducción y orígenes del lenguaje Aunque tiene varias características comunes con BCPL, C no es propiamente un dialecto suyo. Tanto BCPL como B son lenguajes “sin tipos”: el único tipo de datos es la palabra de máquina, y el acceso a otra clase de objetos se efectúa a través de operadores especiales o de llamadas a funciones. En C los objetos fundamentales son caracteres, enteros de varios tamaños y números de punto flotante. C posee las construcciones fundamentales de control de flujo sin las cuales no es posible escribir programas bien estructurados: agrupamiento de sentencias, estructuras selectivas, estructuras repetitivas, funciones, registros y manejo de archivos.  
Introducción y orígenes del lenguaje C incluye apuntadores (punteros) y capacidad de aritmética de direcciones. Los argumentos de las funciones se pasan copiando su valor, siendo imposible que la función llamada altere el valor del argumento de llamante. Cuando se desea realizar una “llamada por referencia”, se puede pasar un apuntador explícitamente, pudiendo la función cambiar el valor del objeto al que se apunta. Los nombres de los arreglos se pasan como dirección de origen del arreglo mismo: Por tanto los argumentos de tipo arreglo se transmiten por referencia.  

Weitere ähnliche Inhalte

Was ist angesagt?

Tipos de lenguaje de programacion
Tipos de lenguaje de programacionTipos de lenguaje de programacion
Tipos de lenguaje de programacionLy Andre
 
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACIONHISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACIONRYAJPS
 
Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Humano Terricola
 
Mapa conceptual
Mapa conceptual Mapa conceptual
Mapa conceptual naye torres
 
Equipo 6 programacion hibrida
Equipo 6 programacion hibridaEquipo 6 programacion hibrida
Equipo 6 programacion hibridagabo
 
Clasificasion de lenguajes
Clasificasion de lenguajesClasificasion de lenguajes
Clasificasion de lenguajesAlex Javier
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacionLuis Peralta
 
Cuadro comparativo.
Cuadro comparativo.Cuadro comparativo.
Cuadro comparativo.carmenmc2017
 
Lenguajes de Programacion
Lenguajes de ProgramacionLenguajes de Programacion
Lenguajes de ProgramacionVelmuz Buzz
 
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNHistoria Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNda4
 
Lenguajes De Programacion
Lenguajes De ProgramacionLenguajes De Programacion
Lenguajes De Programacioncarlos
 
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventosPOE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventosFranklin Parrales Bravo
 
Evolución y clasificación de los lenguajes de programación
Evolución y clasificación de los lenguajes de programaciónEvolución y clasificación de los lenguajes de programación
Evolución y clasificación de los lenguajes de programaciónjuanbryanc
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretadorFrancisco Leal
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)YJGG
 

Was ist angesagt? (20)

Tipos de lenguaje de programacion
Tipos de lenguaje de programacionTipos de lenguaje de programacion
Tipos de lenguaje de programacion
 
Exposición de Lenguajes de Programación
Exposición de Lenguajes de ProgramaciónExposición de Lenguajes de Programación
Exposición de Lenguajes de Programación
 
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACIONHISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
 
Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1
 
Mapa conceptual
Mapa conceptual Mapa conceptual
Mapa conceptual
 
Lenguajes no regulares
Lenguajes no regularesLenguajes no regulares
Lenguajes no regulares
 
Equipo 6 programacion hibrida
Equipo 6 programacion hibridaEquipo 6 programacion hibrida
Equipo 6 programacion hibrida
 
Clasificasion de lenguajes
Clasificasion de lenguajesClasificasion de lenguajes
Clasificasion de lenguajes
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacion
 
Cuadro comparativo.
Cuadro comparativo.Cuadro comparativo.
Cuadro comparativo.
 
Lenguajes de Programacion
Lenguajes de ProgramacionLenguajes de Programacion
Lenguajes de Programacion
 
Paradigmas de la programación
Paradigmas de la programación Paradigmas de la programación
Paradigmas de la programación
 
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNHistoria Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
 
Lenguajes De Programacion
Lenguajes De ProgramacionLenguajes De Programacion
Lenguajes De Programacion
 
Disciplina de desarrollo rup
Disciplina de desarrollo rupDisciplina de desarrollo rup
Disciplina de desarrollo rup
 
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventosPOE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
 
Jerarquia de chomsky
Jerarquia de chomskyJerarquia de chomsky
Jerarquia de chomsky
 
Evolución y clasificación de los lenguajes de programación
Evolución y clasificación de los lenguajes de programaciónEvolución y clasificación de los lenguajes de programación
Evolución y clasificación de los lenguajes de programación
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
 

Andere mochten auch

Generaciones de los lenguajes de programacion pptx
Generaciones de los lenguajes de programacion pptxGeneraciones de los lenguajes de programacion pptx
Generaciones de los lenguajes de programacion pptxyenicamejo
 
Funciones
FuncionesFunciones
Funcionesadark
 
Lenguajes de Programación
Lenguajes de ProgramaciónLenguajes de Programación
Lenguajes de ProgramaciónSandra Esposito
 
Resumen 1 cómo hacer una buena presentación oral domingo mery
Resumen 1 cómo hacer una buena presentación oral domingo meryResumen 1 cómo hacer una buena presentación oral domingo mery
Resumen 1 cómo hacer una buena presentación oral domingo meryPakoo Castillo
 
Lenguaje de programación 20133
Lenguaje de programación 20133Lenguaje de programación 20133
Lenguaje de programación 20133jomarjmm
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaamarilis3
 
Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++N_Alejandrino
 
Lenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compiladorLenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compiladorDunkherz
 
Principios de programación
Principios de programaciónPrincipios de programación
Principios de programaciónmmescobarh
 
Estructura de lenguaje C++
Estructura de lenguaje C++Estructura de lenguaje C++
Estructura de lenguaje C++jhoel terrel
 
Lenguajes de bajo nivel
Lenguajes de bajo nivelLenguajes de bajo nivel
Lenguajes de bajo nivelfelipehhg
 
Algoritmos y Lenguaje de Programación - Ejercicios de: case
Algoritmos y Lenguaje de Programación - Ejercicios de: caseAlgoritmos y Lenguaje de Programación - Ejercicios de: case
Algoritmos y Lenguaje de Programación - Ejercicios de: caseNianko Madara
 
Programación en Lenguajes Estructurados 2012. Parte II
Programación en Lenguajes Estructurados 2012. Parte IIProgramación en Lenguajes Estructurados 2012. Parte II
Programación en Lenguajes Estructurados 2012. Parte IIEuler V. Terán Yépez
 
Metodologia para el diseño de software multimedia
Metodologia para el diseño de software multimediaMetodologia para el diseño de software multimedia
Metodologia para el diseño de software multimediaVIGOTSKY
 
Algoritmos, lenguajes de programación, datos, tipos de datos y datos primitivos.
Algoritmos, lenguajes de programación, datos, tipos de datos y datos primitivos.Algoritmos, lenguajes de programación, datos, tipos de datos y datos primitivos.
Algoritmos, lenguajes de programación, datos, tipos de datos y datos primitivos.yoly1parra1
 

Andere mochten auch (20)

Generaciones de los lenguajes de programacion pptx
Generaciones de los lenguajes de programacion pptxGeneraciones de los lenguajes de programacion pptx
Generaciones de los lenguajes de programacion pptx
 
Funciones
FuncionesFunciones
Funciones
 
Lenguajes de Programación
Lenguajes de ProgramaciónLenguajes de Programación
Lenguajes de Programación
 
Resumen 1 cómo hacer una buena presentación oral domingo mery
Resumen 1 cómo hacer una buena presentación oral domingo meryResumen 1 cómo hacer una buena presentación oral domingo mery
Resumen 1 cómo hacer una buena presentación oral domingo mery
 
Lenguaje de programación 20133
Lenguaje de programación 20133Lenguaje de programación 20133
Lenguaje de programación 20133
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferencia
 
Tecnologias Web Lozano Final
Tecnologias Web Lozano FinalTecnologias Web Lozano Final
Tecnologias Web Lozano Final
 
Cap I Plsql
Cap I PlsqlCap I Plsql
Cap I Plsql
 
trabajos de investigacion
trabajos de investigaciontrabajos de investigacion
trabajos de investigacion
 
Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos selectivos
Algoritmos selectivosAlgoritmos selectivos
Algoritmos selectivos
 
Lenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compiladorLenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compilador
 
Principios de programación
Principios de programaciónPrincipios de programación
Principios de programación
 
Estructura de lenguaje C++
Estructura de lenguaje C++Estructura de lenguaje C++
Estructura de lenguaje C++
 
Lenguajes de bajo nivel
Lenguajes de bajo nivelLenguajes de bajo nivel
Lenguajes de bajo nivel
 
Algoritmos y Lenguaje de Programación - Ejercicios de: case
Algoritmos y Lenguaje de Programación - Ejercicios de: caseAlgoritmos y Lenguaje de Programación - Ejercicios de: case
Algoritmos y Lenguaje de Programación - Ejercicios de: case
 
Programación en Lenguajes Estructurados 2012. Parte II
Programación en Lenguajes Estructurados 2012. Parte IIProgramación en Lenguajes Estructurados 2012. Parte II
Programación en Lenguajes Estructurados 2012. Parte II
 
Metodologia para el diseño de software multimedia
Metodologia para el diseño de software multimediaMetodologia para el diseño de software multimedia
Metodologia para el diseño de software multimedia
 
Algoritmos, lenguajes de programación, datos, tipos de datos y datos primitivos.
Algoritmos, lenguajes de programación, datos, tipos de datos y datos primitivos.Algoritmos, lenguajes de programación, datos, tipos de datos y datos primitivos.
Algoritmos, lenguajes de programación, datos, tipos de datos y datos primitivos.
 

Ähnlich wie CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO

Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónd3m3nt3
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacionjuanjokobrax
 
Actividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lecturaActividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lecturaacdurcor
 
lenguaje de programacion
lenguaje de programacionlenguaje de programacion
lenguaje de programacionpefrayo5
 
tipos de lenguaje de programación
tipos de lenguaje de programacióntipos de lenguaje de programación
tipos de lenguaje de programaciónpefrayo5
 
lenguaje de Programacion
lenguaje de Programacionlenguaje de Programacion
lenguaje de ProgramacionLauracks
 
LENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONLENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONKathGon1
 
Universidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programaciónUniversidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programaciónKatherine Gonzales
 
Traductores de lenguajes de programación
Traductores de lenguajes de programaciónTraductores de lenguajes de programación
Traductores de lenguajes de programaciónDaniela Brignolo
 
Introduccion a la programación I Parte
Introduccion a la programación I Parte Introduccion a la programación I Parte
Introduccion a la programación I Parte Yelixa Araque Angulo
 
Introduccion a la Programación I parte
Introduccion a la Programación I parte Introduccion a la Programación I parte
Introduccion a la Programación I parte Yelixa Araque Angulo
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacionIsrael Abdias
 

Ähnlich wie CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO (20)

Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programación
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 
Actividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lecturaActividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lectura
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
lenguaje de programacion
lenguaje de programacionlenguaje de programacion
lenguaje de programacion
 
tipos de lenguaje de programación
tipos de lenguaje de programacióntipos de lenguaje de programación
tipos de lenguaje de programación
 
Lenguajes basicos para robots
Lenguajes basicos para robotsLenguajes basicos para robots
Lenguajes basicos para robots
 
lenguaje de Programacion
lenguaje de Programacionlenguaje de Programacion
lenguaje de Programacion
 
Programeichon de milagro
Programeichon de milagroProgrameichon de milagro
Programeichon de milagro
 
LENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONLENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACION
 
Universidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programaciónUniversidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programación
 
Programacion
ProgramacionProgramacion
Programacion
 
Traductores de lenguajes de programación
Traductores de lenguajes de programaciónTraductores de lenguajes de programación
Traductores de lenguajes de programación
 
Introduccion a la programación I Parte
Introduccion a la programación I Parte Introduccion a la programación I Parte
Introduccion a la programación I Parte
 
Introduccion a la Programación I parte
Introduccion a la Programación I parte Introduccion a la Programación I parte
Introduccion a la Programación I parte
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Programacion
ProgramacionProgramacion
Programacion
 
Ensayo de marianny
Ensayo de mariannyEnsayo de marianny
Ensayo de marianny
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 

Mehr von adark

estructuras de repeticion
estructuras de repeticionestructuras de repeticion
estructuras de repeticionadark
 
EJERCICIO Diagrama de Flujo
EJERCICIO Diagrama de FlujoEJERCICIO Diagrama de Flujo
EJERCICIO Diagrama de Flujoadark
 
PRUEBAS Y DEPURACIÓN
PRUEBAS Y DEPURACIÓNPRUEBAS Y DEPURACIÓN
PRUEBAS Y DEPURACIÓNadark
 
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOSDEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOSadark
 
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWAREMETODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWAREadark
 
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMASMETODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMASadark
 
1.1 Nuevas Tecnologias de la Informacion.
1.1 Nuevas Tecnologias de la Informacion.1.1 Nuevas Tecnologias de la Informacion.
1.1 Nuevas Tecnologias de la Informacion.adark
 
1.2 Elementos de un sistema computacional.
1.2 Elementos de un sistema computacional.1.2 Elementos de un sistema computacional.
1.2 Elementos de un sistema computacional.adark
 
1.3 Clasificacion de los sistemas operativos.
1.3 Clasificacion de los sistemas operativos.1.3 Clasificacion de los sistemas operativos.
1.3 Clasificacion de los sistemas operativos.adark
 
1.4 Paqueteria de Software.
1.4 Paqueteria de Software.1.4 Paqueteria de Software.
1.4 Paqueteria de Software.adark
 

Mehr von adark (12)

71
7171
71
 
51
5151
51
 
estructuras de repeticion
estructuras de repeticionestructuras de repeticion
estructuras de repeticion
 
EJERCICIO Diagrama de Flujo
EJERCICIO Diagrama de FlujoEJERCICIO Diagrama de Flujo
EJERCICIO Diagrama de Flujo
 
PRUEBAS Y DEPURACIÓN
PRUEBAS Y DEPURACIÓNPRUEBAS Y DEPURACIÓN
PRUEBAS Y DEPURACIÓN
 
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOSDEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
 
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWAREMETODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
 
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMASMETODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
 
1.1 Nuevas Tecnologias de la Informacion.
1.1 Nuevas Tecnologias de la Informacion.1.1 Nuevas Tecnologias de la Informacion.
1.1 Nuevas Tecnologias de la Informacion.
 
1.2 Elementos de un sistema computacional.
1.2 Elementos de un sistema computacional.1.2 Elementos de un sistema computacional.
1.2 Elementos de un sistema computacional.
 
1.3 Clasificacion de los sistemas operativos.
1.3 Clasificacion de los sistemas operativos.1.3 Clasificacion de los sistemas operativos.
1.3 Clasificacion de los sistemas operativos.
 
1.4 Paqueteria de Software.
1.4 Paqueteria de Software.1.4 Paqueteria de Software.
1.4 Paqueteria de Software.
 

Kürzlich hochgeladen

proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoJosDanielEstradaHern
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxnandoapperscabanilla
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioELIASAURELIOCHAVEZCA1
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxdkmeza
 
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
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
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
 

Kürzlich hochgeladen (20)

proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° grado
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptx
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
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
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 

CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO

  • 1. “CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO” 3.1 INTRODUCCIÓN A LA PROGRAMACIÓN
  • 2. Definición de programa Un programa de computadora es un conjunto de instrucciones que producirán la ejecución de una determinada tarea. En esencia, un programa es un medio para conseguir un fin. El fin será probablemente definido como la información necesaria para solucionar un problema. El proceso de programación es, por consiguiente, un proceso de solución de problemas y el desarrollo de un programa requiere las siguientes fases:   Definición y análisis del problema Diseño de algoritmos Diagrama de flujo Diagrama N-S Pseudocódigo Codificación del programa Depuración y verificación del programa Documentación Mantenimiento
  • 3. Definición de programación Programación es la técnica mediante la cual se traducen los algoritmos a un lenguaje de programación como C, C++, C#, Pascal, Visual Basic, etc.
  • 4. Definición de lenguaje de programación Un lenguaje de programación es un lenguaje que puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora. Consiste en un conjunto de reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos, respectivamente. Aunque muchas veces se usa lenguaje de programación y lenguaje informático como si fuesen sinónimos, no tiene por qué ser así, ya que los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como, por ejemplo, el HTML. Un lenguaje de programación permite a un programador especificar de manera precisa: sobre qué datos una computadora debe operar, cómo deben ser estos almacenados y transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural, tal como sucede con el lenguaje Léxico.
  • 5. Definición de lenguaje de programación Los procesadores usados en las computadoras son capaces de entender y actuar según lo indican programas escritos en un lenguaje fijo llamado lenguaje de máquina. Todo programa escrito en otro lenguaje puede ser ejecutado de dos maneras: Mediante un programa que va adaptando las instrucciones conforme son encontradas. A este proceso se lo llama interpretar y a los programas que lo hacen se los conoce como intérpretes. Traduciendo este programa al programa equivalente escrito en lenguaje de máquina. A ese proceso se lo llama compilar y al traductor se lo conoce como compilador.
  • 6. Definición de lenguaje de programación Clasificación de los lenguajes de programación  Los lenguajes de programación se determinan según el nivel de abstracción, según la forma de ejecución y según el paradigma de programación que poseen cada uno de ellos y esos pueden ser: Lenguajes de bajo nivel Los lenguajes de bajo nivel son lenguajes de programación que se acercan al funcionamiento de una computadora. El lenguaje de más bajo nivel es, por excelencia, el código máquina. A éste le sigue el lenguaje ensamblador, ya que al programar en ensamblador se trabajan con los registros de memoria de la computadora de forma directa.
  • 7. Definición de lenguaje de programación Lenguajes de medio nivel  Hay lenguajes de programación que son considerados por algunos expertos como lenguajes de medio nivel (como es el caso del lenguaje C) al tener ciertas características que los acercan a los lenguajes de bajo nivel pero teniendo, al mismo tiempo, ciertas cualidades que lo hacen un lenguaje más cercano al humano y, por tanto, de alto nivel. Lenguajes de alto nivel Los lenguajes de alto nivel son normalmente fáciles de aprender porque están formados por elementos de lenguajes naturales, como el inglés. En BASIC, el lenguaje de alto nivel más conocido, los comandos como "IF CONTADOR = 10 THEN STOP" pueden utilizarse para pedir a la computadora que pare si CONTADOR es igual a 10. Por desgracia para muchas personas esta forma de trabajar es un poco frustrante, dado que a pesar de que las computadoras parecen comprender un lenguaje natural, lo hacen en realidad de una forma rígida y sistemática.
  • 8. Definición de lenguaje de programación Según la forma de ejecución:   Lenguajes compilados  Naturalmente, un programa que se escribe en un lenguaje de alto nivel también tiene que traducirse a un código que pueda utilizar la máquina. Los programas traductores que pueden realizar esta operación se llaman compiladores. Éstos, como los programas ensambladores avanzados, pueden generar muchas líneas de código de máquina por cada proposición del programa fuente. Se requiere una corrida de compilación antes de procesar los datos de un problema. Los compiladores son aquellos cuya función es traducir un programa escrito en un determinado lenguaje a un idioma que la computadora entienda (lenguaje máquina con código binario). Al usar un lenguaje compilado (como lo son los lenguajes del popular Visual Studio de Microsoft), el programa desarrollado nunca se ejecuta mientras haya errores, sino hasta que luego de haber compilado el programa, ya no aparecen errores en el código.
  • 9. Definición de lenguaje de programación Lenguajes interpretados   Se puede también utilizar una alternativa diferente de los compiladores para traducir lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en forma permanente el código objeto que se produce durante la corrida de compilación para utilizarlo en una corrida de producción futura, el programador sólo carga el programa fuente en la computadora junto con los datos que se van a procesar. A continuación, un programa intérprete, almacenado en el sistema operativo del disco, o incluido de manera permanente dentro de la máquina, convierte cada proposición del programa fuente en lenguaje de máquina conforme vaya siendo necesario durante el proceso de los datos. No se graba el código objeto para utilizarlo posteriormente.
  • 10. Definición de lenguaje de programación Lenguajes interpretados La siguiente vez que se utilice una instrucción, se le debe interpretar otra vez y traducir a lenguaje máquina. Por ejemplo, durante el procesamiento repetitivo de los pasos de un ciclo, cada instrucción del ciclo tendrá que volver a ser interpretado cada vez que se ejecute el ciclo, lo cual hace que el programa sea más lento en tiempo de ejecución (porque se va revisando el código en tiempo de ejecución) pero más rápido en tiempo de diseño (porque no se tiene que estar compilando a cada momento el código completo). El intérprete elimina la necesidad de realizar una corrida de compilación después de cada modificación del programa cuando se quiere agregar funciones o corregir errores; pero es obvio que un programa objeto compilado con antelación deberá ejecutarse con mucha mayor rapidez que uno que se debe interpretar a cada paso durante una corrida de producción.
  • 11. Definición de lenguaje de programación Según el paradigma de programación: Lenguajes imperativos Lenguajes declarativos Funcionales Lógicos Lenguajes orientados a objetos  
  • 12. Definición de lenguaje de programación En la Programación Orientada a Objetos (POO u OOP según siglas en inglés) se definen los programas en términos de "clases de objetos", objetos que son entidades que combinan estado (es decir, datos) comportamiento (esto es, procedimientos o métodos) e identidad (propiedad del objeto que lo diferencia del resto). La programación orientada a objetos expresa un programa como un conjunto de estos objetos, que colaboran entre ellos para realizar tareas. Esto permite hacer los programas módulos más fáciles de escribir, mantener y reutilizar.
  • 13. Definición de lenguaje de programación Algunos lenguajes de programación
  • 14. Introducción y orígenes del lenguaje C es un lenguaje de programación de empleo general, caracterizado por su concisión y por poseer un moderno flujo de control y estructuras de datos, así como un rico conjunto de operadores. No es un lenguaje de “muy alto nivel” ni “grande”, no está especializado en ninguna área particular de aplicación. En cambio su carencia de restricciones y su generalidad lo hacen más eficaz y conveniente para muchas tareas que otros lenguajes, supuestamente más potentes.   C fue diseñado originalmente para el sistema operativo UNIX en la PDP-11 de la DEC e implantado en ella por Dennis Ritchie. Tanto el sistema operativo como el compilador de C y prácticamente todos los programas de aplicación en UNIX se escribieron en C. También existen compiladores para otras máquinas, entre ellas IBM/370, Honeywell 6000 e Interdata 8/32. Sin embargo C no está ligado a un hardware o sistema en concreto, siendo fácil escribir programas que ejecuten tareas sin ningún cambio en cualquier máquina que soporta C.  
  • 15. Introducción y orígenes del lenguaje C es un lenguaje de relativo “bajo nivel”. Esta tipificación no es peyorativa; simplemente significa que C trabaja con la misma clase de objetos que la mayoría de las computadoras: caracteres, números y direcciones, que pueden ser combinados con operadores aritméticos y lógicos, utilizados normalmente en las máquinas. C no contiene operaciones para trabajar directamente con objetos compuestos, tales como cadenas de caracteres, conjuntos, listas, arreglos o vectores. C sólo ofrece sentencias de control de flujo sencillas, secuenciales, de selección de repetición, bloques y subprogramas. Muchas de las ideas principales de C provienen de un lenguaje mucho más antiguo: el lenguaje BCPL, inventado por Martin Richards. La influencia de BCPL le llega indirectamente a través del lenguaje B, escrito por Ken Thompson en 1970 para el primer sistema UNIX en una PDP-7.  
  • 16. Introducción y orígenes del lenguaje Aunque tiene varias características comunes con BCPL, C no es propiamente un dialecto suyo. Tanto BCPL como B son lenguajes “sin tipos”: el único tipo de datos es la palabra de máquina, y el acceso a otra clase de objetos se efectúa a través de operadores especiales o de llamadas a funciones. En C los objetos fundamentales son caracteres, enteros de varios tamaños y números de punto flotante. C posee las construcciones fundamentales de control de flujo sin las cuales no es posible escribir programas bien estructurados: agrupamiento de sentencias, estructuras selectivas, estructuras repetitivas, funciones, registros y manejo de archivos.  
  • 17. Introducción y orígenes del lenguaje C incluye apuntadores (punteros) y capacidad de aritmética de direcciones. Los argumentos de las funciones se pasan copiando su valor, siendo imposible que la función llamada altere el valor del argumento de llamante. Cuando se desea realizar una “llamada por referencia”, se puede pasar un apuntador explícitamente, pudiendo la función cambiar el valor del objeto al que se apunta. Los nombres de los arreglos se pasan como dirección de origen del arreglo mismo: Por tanto los argumentos de tipo arreglo se transmiten por referencia.