PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE...

34
PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de Educación a Distancia CREAD Programa Ingeniería de sistemas

Transcript of PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE...

Page 1: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

PRINCIPIOS DE PROGRAMACION

VLADIMIR RAFAEL ARNEDO POMARES

“LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION”

Universidad de CartagenaCentro Regional de Educación a Distancia

CREAD Programa Ingeniería de sistemas

Page 2: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

DEFINICION DE ALGORITMO

Es una secuencia ordenada de pasos que conducen a la solución de un problema dado.

Ejemplo de algoritmo:

Algoritmo cada_mañana:

Abrir los ojos.Levantarme de la cama.Pasar al bañoDarme una ducha.Vestirme.Desayunar.Salir al trabajo.

Page 3: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

CARACTERISCAS Y PARTES DE UN ALGORITMO

Características:

PRECISO.DEFINIDO.FINITO.

Partes:

ENTRADA.PROCESO.SALIDA.

Page 4: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

LENGUAJES DE PROGRAMACION

Los algoritmos se convierten en un conjunto de sentencias e instrucciones entendibles por la maquina mediante los lenguajes de programación.

CLASIFICACION:

Lenguajes Maquina: Codificación Binaria. (1110110001)Lenguajes Ensamblador o de bajo Nivel: Nemotécnicos.

ADD 5,7Lenguajes de Alto nivel: Uso de Compiladores e interpretes.Lenguajes de Cuarta Generación: Lenguaje natural.

Extract all clientes Where Saldo more than $500.000Lenguajes de quinta Generación: Desarrollo visual.

Interfaces graficas avanzadas. Orientados a IDE.

Page 5: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

Según Joyanes (2003), FORTRAN se empleaba para cómputo científico, el lenguaje más utilizado en cuanto a negocios eran escritos en COBOL, las aplicaciones militares en JOVIAL y las militares incrustadas en ADA, pero de todos los lenguajes que habían en los años 1960 ya no queda ninguno pues con las evoluciones que han adquirido han ido descartando lenguajes de difícil manejo.

¿Qué papeles desempeñan los Lenguajes de Programación?

Page 6: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

Intérpretes:Es un traductor que toma un programa fuente, lo

traduce y a continuación lo ejecuta

Compiladores:Es aquel programa que traduce un programa en

lenguaje de alto nivel. Fases de compilación; proceso por el cual el

programa fuente es transformado a programa ejecutable

Traductores de lenguaje de programación

Page 7: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

COMPILADOR

Page 8: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

Inicio

Editar Programa Fuente

Compilar el Programa

Enlazador

Ejecución

Programa

Programa Ejecutable

Existen errores en

la compilación

Modificación Programa

Fuente

Fases de compilación

Page 9: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

LENGUAJES DE PROGRAMACION

Page 10: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

ABAP ABC ActionScript Afnix ASP ASP.NET AWK B BCPL Befunge Boo C++ C# Caml Clipper CLIPS CLU CORAL D Delphi DIV

CORAL D Delphi DIV Dylan Eiffel Erlang Ensamblador Extended ML Euphoria Fénix Flow -Matic Gambas GML GRAFCET FP Haskell Icon Inform INTERCAL ISWIM

J Java JavaScript Joy KWC LADDER Letra Lexico Lingo Lua MAGIC Mainsail Mesa Miranda ML Modula Modula-3 Natural NetREXX Oberon Object REXX

Objective -C Ocaml Occam Oz Parlog Perl PHP Plankalkül PostScript PowerBuilder Prolog Python Rapid REXX RPN RPG Ruby Sail Sather Scheme Seed7

Self Sh Simula Smalltalk Snobol SPARK Squeak SR Standard ML TI-Basic TCL VBA Visual Basic Visual C++ Visual

DialogScript Seed7 Self Sh Simula Smalltalk

OTROS LENGUAJES DE PROGRAMACION

Page 11: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

CASO ESPECIAL JAVA

Unix, Linux, Solaris, Windows, Mac

Page 12: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

DATOSDEFINICION

DATO: Es una representación simbólica ya sea numérica o alfabética de un atributo o característica de una entidad. Los programas los utilizan para realizar las operaciones respectivas generando la información requerida por el usuario.

Page 13: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

TIPOS DE DATOS

DINAMICOS

Pilas

Colas

Listas

Árboles

ESTATICOS

SIMPLES ESTRUCTURADOS

Enteros

Reales

Carácter

Booleanos

Array

Cadena

Registro

Archivo

Page 14: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

DATOS SIMPLES

TIPO TAMAÑO

CHAR 1 Byte

INT 2 Bytes

FLOAT 4 Bytes

DOUBLE 8 Bytes

Page 15: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

DATOS ESTRUCTURADOS

SON AQUELLOS QUE ESTAN FORMADOS POR UN CONJUNTO DE DATOS SIMPLES. SU TAMAÑO ES INMODIFICABLE DURANTE LA EJECUCION DEL PROGRAMA.

Ej. Dato de tipo Array (Arreglo) Edades[5] 32 27 41 52 25

Page 16: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

DATOS DINAMICOS

SON QUELLOS QUE DURANTE EL TRANSCURSO DE EJECUCION DEL PROGRAMA PUEDEN MODIFICAR SU TAMAÑO DE ACUERDO A LAS NECESIDADES DEL USUARIO.

Ej. Dato de tipo LISTA. edades[3]

edades[4]

35 21 29

35 21 29 42

Page 17: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

OPERADORESARITMETICOS CONDICIONALES ALFANUMERICOS LOGICOS

• + Suma•- Resta•* Multiplicación• ^ Potenciación•/ Division real•DIV Division entera•MOD Residuo

• < Menor que•= Igual•> Mayor que•<= Menor o igual que•>= Mayor o igual que•<> ó != Diferente

• + ó . Concatenar cadenas

• OR o•AND y•NOT Negación

P NOT p

V F

F V

p q p AND q

V V V

V F F

F V F

F F F

P q p OR q

V V V

V F V

F V V

F F F

Page 18: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

PRIORIDAD DE OPERANDOS

Paréntesis (Empezando por los mas internos). Potencias. Divisiones y Productos. Sumas y Restas. Concatenación. Condicionales. Lógicos. Ej. X= 5+7*3 X= 26

Producto mayor prioridad

Page 19: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

CONSTANTES Y VARIABLES

Los Datos pueden ser Constantes o Variables. Un dato constante es aquel que permanece sin cambios durante toda la ejecución del programa. Ej. ‘M’, -5, 23, “mensaje”

Una variable es un elemento que cambia de estado o valor

durante la ejecución de un programa. Cuando se crea una variable la maquina reserva espacio en la memoria RAM para almacenar el valor que tomara en un instante dado la variable. La variables están compuestas de: Un identificador o nombre de la variable y el tipo de dato que almacena la variable.

Ej. Edad : entero

En Java: int Edad = 30;

30

Edad

RAM

Page 20: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

EXPRESIONES

Expresiones aritméticas: 5 * 7 4 ^2 3 + (8 - 6) 7 – 2 / 5

Expresiones lógicas: (A – 2) > (B – 4) (A=8)AND(B=8)

Page 21: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

DFD’s(Diagramas de Flujo de Datos)

DFD: Es un diagrama que utiliza símbolos estándares el cual representan los pasos del algoritmo, unidos por flechas llamadas líneas de flujo que indican la secuencia en que se deben ejecutar cada una de las instrucciones.

Page 22: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

PSEUDOCODIGO

Es un lenguaje de especificación de algoritmos que se aproxima al lenguaje natural usado por el ser humano.

Ej. //Algoritmo que calcula área triangulo -> esto es un comentario

Var real: base,altura,area -> las variables a usar Inicio //Lectura de los datos de entrada Leer (base) Leer (altura) //calcular area area <- base * altura / 2 //Presentar resultado en pantalla Escribir (area) Fin

Page 23: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

TIPOS DE INSTRUCCIONES

Instrucciones de INICIO / FIN

Instrucciones de seleccion.

Instrucciones condicionales.

Instrucciones repetitivas.

Page 24: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

INSTRUCCIONES DE SELECCION

LECTURA

ASIGNACION

ESCRITURA

PSEUDOCODIGO//Algoritmo que calcula área triangulo -> esto es un comentarioVar real: base,altura,area -> las variables a usar Inicio //Lectura de los datos de entrada Leer (base) Leer (altura) //calcular area area <- base * altura / 2

//Presentar resultado en pantalla Escribir (area) Fin

JAVAimport java.io.*;public class Area{    public static void main (String [] args)    {        InputStreamReader isr = new InputStreamReader(System.in);        BufferedReader br = new BufferedReader (isr);

        try        {            System.out.print(“Digite Base : ");            float base = Integer.parseInt(br.readLine());            System.out.print(“Digite Altura : ");            float altura = Integer.parseInt(br.readLine());            float area=base * altura;            System.out.println (“El área es: “+ area);        }        catch (Exception e)        {            e.printStackTrace();        }    }}

VISUAL BASIC . NETModule Ejercicio Sub main( ) Dim base As Decimal ‘ declaro variables Dim altura As Decimal Dim area As Decimal Console.Write(“Digite la Base:”) ‘capturo datos base = Console.Readline Console.Write(“Digite la altura:”) altura = Console.Readline area = base * altura Console.Write(“El area del triagulo es: {0}”,area) end subEnd Module

Page 25: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

INSTRUCCIONES CONDICIONALES

Se ejecutan de acuerdo a un criterio de evaluación.

SE CLASIFICAN EN:

1. CONDICIONAL SIMPLE2. CONDICIONAL DOBLE3. CONDICIONAL MULTIPLE

Page 26: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

CONDICIONAL SIMPLE

condición

P1

PSEUDOCODIGOInicio

//CONDICION si condición = verdadera entonces ejecutar (P1) fin si Fin

SINO

JAVAIf ( condición ) { ejecutar (P1);

}

VISUAL BASIC .NETIf condicion then ejecutar (P1)

end if

Page 27: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

CONDICIONAL DOBLE

condición

P1

SINO

P2

PSEUDOCODIGOInicio

//CONDICION si condición = verdadera entonces ejecutar (P1) si no ejecutar (P2) fin si Fin

JAVAIf ( condición ) { ejecutar (P1); }else { ejecutar (P2): }

VISUAL BASIC .NETIf condicion then ejecutar (P1) else ejecutar (P2)end if}

Page 28: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

CONDICIONAL MULTIPLE

selección

P3

31

P1 P2

2

Pn

n

PSEUDOCODIGOInicio

según_sea ( selección ) hacer 1: ejecutar (P1) 2: ejecutar (P2) 3: ejecutar (P3) n: ejecutar (Pn) si no ejecutar (por defecto) fin según_sea Fin

JAVA

switch ( selección ) { case 1: ejecutar (P1); break; case 2: ejecutar (P2) break; case 3: ejecutar (P3) break; case n: ejecutar (Pn) break; default: ejecutar (por defecto); }

VISUAL BASIC .NET

Select Case opcion Case 1: ejecutar (P1) Case 2: ejecutar (P2) Case 3: ejecutar (P3) Case n: ejecutar (Pn) Case else ’si no se cumple ninguna de las expresionesend select

Page 29: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

INSTRUCCION REPETITIVA MIENTRAS

MQ condición

P

cierre

inicio

FIN

PSEUDOCODIGOInicio mientras condición = verdadera haga ejecutar (P) fin mientras Fin

VISUAL BASIC .NET

While condicion = verdadera ejecutar (P)end while

JAVA

While (condicion = verdadera) { ejecutar (P);}

Page 30: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

INSTRUCCION REPETITIVA PARA

PARA A1, 10, 1

P

cierre

inicio

FINPara: A inicia desde 1, hasta que tome el valor de 10

y se incremente de uno en uno.

PSEUDOCODIGOInicio

para A1 hasta 10 de 1 en 1 haga ejecutar (P) fin para Fin

VISUAL BASIC .NET

For A = 1 To 10 Step 1 ejecutar (P) Next

JAVA

for (A=1;A<10;A++){ ejecutar (P); }

Page 31: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

ANIDAMIENTO DE ESTRUCTURAS

PSEUDOCODIGO

Inicio

//CONDICION si condición = verdadera entonces ejecutar (P1) si no

si condicion2 = verdadera entonces ejecutar (P2) si no ejecutar (P3) fin si

fin si Fin

JAVA

If ( condición ) { ejecutar (P1); }else { if (condición 1) { ejecutar (P2); } else{ ejecutar (P3); } }

Page 32: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

ANIDAMIENTO DE ESTRUCTURAS

PSEUDOCODIGOInicio

para A1 hasta 10 de 1 en 1 haga ejecutar (P) para B1 hasta 10 de 3 en 3 haga ejecutar (P) fin para fin para Fin

JAVA

for (A=1;A<10;A++){ ejecutar (P); for (B=1;B<10;B+=3){ ejecutar (P); } }

Page 33: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

CONTADORESACUMULADORES

Los procesos repetitivos requieren contar los sucesos y acciones internas, una forma de hacerlo es mediante un contador. Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad constante en cada repetición. La forma en que se construye un contador es la siguiente:

Mientras A < 10 haga

A A + 1 fin mientras

Un acumulador o totalizador es una variable cuya función es almacenar cantidades resultantes de operaciones sucesivas. Realiza la misma función que un contador con la diferencia de que el incremento o decremento es variable en lugar de constante.

nuevo_saldo 0 //Este es el acumulador

Mientras A < 10 haga A A + 1 Leer (saldo) nuevo_saldo nuevo_saldo + saldo fin mientras

n programación, se llama acumulador a una variable cuyo valor se incrementa o decrementa en un valor que no tiene por qué ser fijo (en cada iteración de un bucle). Un acumulador suele utilizarse para acumular resultados producidos en las iteraciones de un bucle

Page 34: PRINCIPIOS DE PROGRAMACION VLADIMIR RAFAEL ARNEDO POMARES “LA PROGRAMACION Y LOS LENGUAJES DE PROGRAMCION” Universidad de Cartagena Centro Regional de.

Recomendaciones: Se recomienda el estudio y práctica de los diseños de Lenguajes de

Programación pues a través de ellos podremos ejercitarnos y realizar eficaces algoritmos.

Investigar los Lenguajes de Programación de tal manera que tengamos la habilidad de poder escoger el mejor lenguaje de programación de acuerdo a lo que queramos realizar.

Conclusiones: Los Lenguajes de Programación son muy complicados de definir pero si

sabemos que con ellos podemos desarrollar muchas cosas pues para cada dominio como las Matemáticas, Aplicaciones Militares e incluso el Juego como muchas otras ya que existen lenguajes específicamente para cada uno de ellos.

Promover la utilización de los lenguajes de programación de tal manera que obtengamos la habilidad de utilización, elección y diseño de estos lenguajes.