Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Profesor: Bachilleres:
José Luis Rodríguez Henry Guzmán 27.375.465
José Guzmán 27.375.464
Rafael Figueira 26.770.537
2
Índice
Págs.
Introducción……………………………………………………………………… 4
1.1. Definición…………………………………………………….………….. 5
1.2. Clasificación………………………………………….…………….……. 5
1.3. Características……………………………………………………………. 7
1.4. Tipos……………………………………………………………………… 8
1.5. Usos………………………………………………………………………. 9
(Automatización de un problema)……………….……………………………. 13
¿Qué es?
Ejemplo.
¿Qué es?
Ejemplo.
En qué consiste.
Metodologías de implementación.
En qué consiste.
3
Metodologías de implementación.
Conclusiones…………………………………………………………………….. 27
Bibliografía……………………………………………………………………… 29
Introducción
4
El término “programación” se define como un proceso por medio del cual se diseña, se
codifica, se escribe, se prueba y se depura un código básico para las computadoras. Ese código es
el que se llama “código fuente” que caracteriza a cada lenguaje de programación. Cada lenguaje
de programación tiene un “código fuente” característico y único que está diseñado para una
función o un propósito determinado y que nos sirven para que una máquina o computador se
En general un lenguaje de programación sirve para programar. Sin embargo cada uno de
Los mismos son de gran importancia porque permiten generar distintos sistemas que
1.1. Definición.
símbolos, palabras claves, reglas semánticas y sintácticas que permiten el entendimiento entre un
1.2. Clasificación:
programación.
- Lenguajes de Alto Nivel: Más parecidos al lenguaje natural, cercanos al problema, nos
Según su Propósito:
de alto nivel de abstracción para cumplir tareas especificas como el procesamiento de textos,
Ejecución:
Requieren del código fuente para ejecutar el programa. Ejemplos: Perl, Lisp.
Paradigma de Programación:
especifican con detalle el orden de ejecución del programa. Ejemplos: Fortran, Algol, Ada,
Pascal, C, C++
- Lenguajes Declarativos: expresan lo que el programa debe lograr sin prescribir como
hacerlo, en término de secuencias de acciones que deben tomarse. Ejemplos: Sql, Html, Rpg.
Prolog.
esquema del mundo real para definir los objetos, acciones y forma de comunicarse entre los
1.3 Características:
utilidades que proporcione a los programadores. Las características que debe tener un lenguaje
Naturalidad: se refiere a que su aplicación en el área para la que fue diseñado debe
hacerse de forma natural, proporcionando operadores, estructuras y sintaxis para que los
Estructuración: permite que los programadores escriban sus códigos de acuerdo con los
Compacidad: con esta característica es posible expresar las operaciones con concisión,
Localidad: se refiere a que los códigos se concentran en la parte del programa con la cual
1.4 Tipos.
Son aquellos utilizados para controlar el hardware (partes tangibles) del aparato y
diferentes para los que fueron creados. Estos lenguajes son los que ordenan las
principalmente los fabricantes de hardware. Con ellos se pueden programar tareas como
para permitir programación dedicada, como lo fue Pascal con las matemáticas en su
comienzo. También, se han implementado lenguajes educativos infantiles como Logo que
mediante una serie de simples instrucciones, permitía mover una tortuga entre otras cosas.
1.5 Usos.
Un Lenguaje de programación sirve, en primer lugar, para poder programar. Dado que
existen muchos lenguajes de programación distintos, podríamos sacar en conclusión que cada
uno sirve para algo diferente, y es más o menos así. Por ejemplo, HTML y JavaScript son
lenguajes que se usan en el campo del desarrollo y diseño web, junto con CSS. Sin embargo, C y
Hay más casos, pero todos tienen el mismo objetivo. Así, desde una perspectiva
empresarial, el lenguaje es lo que hace que el programador pueda hacer funcionar una web y
(AUTOMATIZACIÓN DE UN PROBLEMA).
forma que cada uno es dependiente de los anteriores, lo cual indica que se trata de un proceso
13
complementario y por lo tanto cada paso exige el mismo cuidado en su elaboración. Los siete
2. Análisis de la solución.
3. Diseño de la solución.
4. Codificación.
5. Prueba y depuración.
6. Documentación.
7. Mantenimiento.
que se desea que realice la computadora, mientras esto no se conozca del todo, no tiene
caso continuar.
establece el problema, para poder determinar si se cuenta con los elementos suficientes
pasos ordenados que nos proporcione un método explicito para la solución del problema.
computadora; es decir un lenguaje de programación (ya sea de bajo o alto nivel), a esta
La depuración consiste en eliminar los errores que se hayan detectado durante la prueba,
Documentación: Es la guía o comunicación escrita que sirve como ayuda para usar el
persona es usado por muchas otras, por ello la documentación es muy importante; esta
o Externa: Está integrada por los siguientes elementos: Descripción del problema,
guía que indica al usuario como navegar en el programa, presentando todas las
15
la tarea.
Es el conjunto de reglas que se deben seguir para que el compilador sea capaz de reconocer
Ejemplo:
main () {Lista_de_sentencias}
Una característica de la sintaxis del C es que los espacios en blanco y retornos de carro que
aparecen en las reglas sintácticas son opcionales. Esto quiere decir que nuestro programa de
La semántica describe el proceso que una computadora sigue cuando ejecuta un programa
en ese lenguaje específico. Esto se puede mostrar describiendo la relación entre la entrada y la
16
Ejemplo:
En general, las tres operaciones lo que hacen semánticamente hablando, es sumar Y con X
y almacenar el resultado en X.
El proceso de compilación es, en grosso modo, convertir uno o varios archivos de código
1) Procesamiento: Lo primero que hace el compilador es pre procesar el archivo fuente, esto
un archivo «.o».
3) Enlace: El siguiente paso para lograr que el código objeto se vuelva ejecutable, es el de
enlazar, o «linkear» el objeto con las librerías del sistema, las librerías que utiliza.
estructurada para solucionar problemas de programación más grandes y complejos de lo que ésta
puede resolver. Al aplicar la programación modular, un problema complejo debe ser dividido en
varios subproblemas más simples, y estos a su vez en otros subproblemas más simples. Esto debe
hacerse hasta obtener subproblemas lo suficientemente simples como para poder ser resueltos
fácilmente con algún lenguaje de programación. Ésta técnica se llama refinamiento sucesivo,
Metodologías de implementación.
Es evidente que si esta metodología nos lleva a tratar con subproblemas, entonces también
tengamos la necesidad de poder crear y trabajar con subprogramas para resolverlos. A estos
subprogramas se les suele llamar módulos, de ahí viene el nombre de programación modular.
18
Un módulo es cada una de las partes de un programa que resuelve uno de los subproblemas
en que se divide el problema complejo original. Cada uno de estos módulos tiene una tarea bien
definida y algunos necesitan de otros para poder operar. En caso de que un módulo necesite de
otro, puede comunicarse con éste mediante una interfaz de comunicación que también debe estar
bien definida. Si bien un módulo puede entenderse como una parte de un programa en cualquiera
de sus formas y variados contextos, en la práctica se los suele tomar como sinónimos de
funciones.
Los procedimientos es un subprograma que realiza una tarea específica. Para invocarlo,
es decir, para hacer que se ejecute, basta con escribir su nombre en el cuerpo de otro
procedimiento o en el programa principal. Pero, hay que tener muy en cuenta que su declaración
funciones predefinidas, también llamadas estándar, son las que el propio lenguaje La
programación modular pone a disposición del programador. Por ejemplo, si necesitas calcular el
una que lo hace. Dependiendo del tipo de compilador de la programación modular que uses,
dispondrás de más o menos funciones estándar, pero siempre tendrás un grupo básico que
Las funciones de usuario son, como su nombre indica, las que el propio usuario declara, de
igual manera que declara procedimientos. Las funciones nacen con el propósito de ser
necesita, se incluyen los parámetros entre paréntesis. Y para invocar una función es
En qué consiste:
Es una técnica utilizada en programación que nos permite que un bloque de instrucciones
La recursividad es una técnica de programación que se utiliza para realizar una llamada a
una función desde ella misma, de allí su nombre. El ejemplo más utilizado por su fácil
factorial.
términos de una llamada a sí mismo. La llamada a sí mismo se conoce como llamada recursiva o
recurrente.
#include <iostream>
#include <cstdlib>
using namespace std;
int Factorial(int n);
int main(){
int valor;
system("clear");
cout << "Introduzca numero a calcular: ";
cin >> valor;
cout << "\nEl Factorial de " << valor << " es: " << Factorial(valor) << endl;
return 0;
}
int Factorial(int n){
if (n < 0){
cout << “No existe el factorial de un numero negativo.\n”;
}else if(n < 2){
return 1;
}else
return n * Factorial(n-1);
}
Recursión lineal: En la recursión lineal cada llamada recursiva genera, como mucho, otra
llamada recursiva. Se pueden distinguir dos tipos de recursión lineal atendiendo a cómo se
genera resultado.
expresión para dar lugar al resultado de la función que llama. El ejemplo típico de
recursión lineal no final es cálculo del factorial de un número (n! = n * (n-1) * ..* 2 * 1).
/*
*ejemplo7_1.c
*/
#include <stdio.h>
int factorial(int numero){
if (numero > 1) return (numero*factorial(numero-1));
else return(1);
}
int main (){
int n;
printf("Introduce el número: ");
scanf("%d",&n);
printf("El factorial es %d", factorial(n));
}
última llamada recursiva. Un ejemplo de este cálculo es el máximo común divisor, que
/*
*ejemplo7_2.c
*/
#include <stdio.h>
long mcd(long,long);
main(int argc, char *argv[]){
22
Recursión múltiple: Alguna llamada recursiva puede generar más de una llamada a la
función. Uno de los centros más típicos son los números de Fibonacci, números que
reciben el nombre del matemático italiano que los descubrió. Estos números se calculan
mediante la fórmula:
Estos números poseen múltiples propiedades, algunas de las cuales todavía siguen
pero se estabiliza en un número irracional conocido como razón áurea o número áureo,
1,618033989.
términos de la sucesión de Fibonacci, cada uno de ellos distinto a los demás. Por ejemplo,
17=13+3+1, 65=55+8+2.
23
Tan sólo un término de cada tres es par, uno de cada cuatro es múltiplo de 3, uno de cada
Si F(p) es un número primo, p también es primo, con una única excepción. F(4)=3; 3 es
/*
*ejemplo7_3.c
*/
#include <stdio.h>
long fibonacci (int);
int main()
{
int n= 30;
printf("El %dº número de Fibonacci es %ld\n", n,
fibonacci(n));
}
long fibonacci(int n)
{
if (1 == n || 2 == n) {
return 1;
} else {
return (fibonacci(n-1) + fibonacci(n-2));
}
Recursión mutua: Implica más de una función que se llaman mutuamente. Un ejemplo
/*
*ejemplo7_4.c
*/
#include <stdio.h>
long fibonacci (int);
int main(){
24
int n= 30;
if (par(n))
printf("El número es par");
else
printf("El número es impar");
}
int par(int n){
if (n==0) return 1;
else return (impar(n-1));
}
int impar(int n){
if (n==0) return 0;
else return(par(n-1));
}
Todo aquel modelo, patrón o ejemplo que debe seguirse en determinada situación.
de programadores dan solución a uno o varios problemas claramente definidos. En este sentido,
dicen al ordenador cómo realizar una tarea. Los primeros lenguajes imperativos fueron
programas complejos.
complejidad elevado fue FORTRAN. Hoy en día está representado por los lenguajes
está buscando). No existen asignaciones destructivas, y las variables son utilizadas con
lenguajes algebraicos, como Maude y SQL. Los lenguajes funcionales, como Haskell
y Erlang.
objetivo es dividir el programa en módulos de forma que cada uno de éstos realice una
única función.
El primer lenguaje de programación funcional fue LISP. Existen dos tipos de lenguajes
funcionales: los puros (como HASKELL) y los híbridos (SAP, ML, Scheme).
26
primer orden y, a diferencia de los demás paradigmas, especifica qué debe hacer el
un programa como un conjunto de objetos, que colaboran entre ellos para realizar
tareas. Esto permite hacer los programas y módulos más fáciles de escribir, mantener,
CONCLUSIÓNES
Los lenguajes se clasifican en: Bajo Nivel que son lenguajes totalmente orientados a la
máquina y sirven de interfaz para crear un vínculo inseparable entre el hardware y el software.
De alto nivel tienen como objetivo facilitar el trabajo del programador, ya que utilizan unas
instrucciones más fáciles de entender. Además, permite escribir códigos mediante idiomas que
conocemos (español, inglés, etc.) y luego, para ser ejecutados, se traduce al lenguaje de máquina
mediante traductores o compiladores. Otros lenguajes de alto nivel son: Ada, Basic, Cobol,
en el código fuente del programa al lenguaje binario o lenguaje de máquina para que este pueda
ejecutarse.
problema.
28
forma de abordar los elementos involucrados en el problema, así como los pasos necesarios para
llegar a su solución.
BIBLIOGRAFIA
http://conogasi.org/articulos/lenguaje-de-programacion/
29
http://www.cavsi.com/preguntasrespuestas/cual-es-la-clasificacion-los-lenguajes-de-
programacion/
https://rockcontent.com/es/blog/que-es-un-lenguaje-de-programacion/
https://concepto.de/lenguaje-de-programacion/#ixzz66tJ8GG1S
https://concepto.de/lenguaje-de-programacion/#ixzz66tEhJVco
https://domingogallardo.github.io/apuntes-lpp/teoria/tema01-historia-lenguajes-
programación/tema01-historia-lenguajes-programacion.html
https://www.preceden.com/timelines/310321-evoluci-n-de-los-lenguajes-de-programacion
http://pasossoluciondeproblemas.blogspot.com/2012/01/metodologia-para-la-solucion-de-
pasos.html
https://juncotic.com/compilacion-fuente-ejecutable/
http://webdelprofesor.ula.ve/nucleotrujillo/jalejandro/Prog2/Unidad3.pdf
https://upsg01.foroactivo.com/t192-tipos-de-recursividad
http://biolab.uspceu.com/aotero/recursos/docencia/TEMA%207.pdf
https://www.significados.com/paradigma/
https://www.ecured.cu/Programaci%C3%B3n_declarativa