PRINCIPIOS DE
PROGRAMACION
Centro De Estudios Científicos y Tecnológicos
N° 13.
Ricardo Flores Magón.
1I10
Ángeles Nieves Erick Raúl
Boa Martínez Denisse
García Bejarano Gustavo
Vargas Zúñiga Tamara
Vazcoy Trujillo Adolfo
17/02/2015
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ño
-Darme una ducha.
-Vestirme.
-Desayunar.
-Salir al trabajo.
CARACTERISCAS Y PARTES DE UN ALGORITMO
 Características:
○ PRECISO.
○ DEFINIDO.
○ FINITO.
 Partes:
○ ENTRADA.
○ PROCESO.
○ SALIDA.
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,7
Lenguajes de Alto nivel: Uso de Compiladores e interpretes.
Lenguajes de Cuarta Generación: Lenguaje natural.
Extract all clientes Where Saldo more than $500.000
Lenguajes de quinta Generación: Desarrollo visual.
Interfaces graficas avanzadas. Orientados a IDE.
 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
COMPILADOR
LENGUAJES DE PROGRAMACION
CASO ESPECIAL
JAVA
Unix, Linux, Solaris,
Windows, Mac
DATOS
DEFINICION
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.
TIPOS DE DATOS
DINAMICOS
Pilas
Colas
Listas
Árboles
ESTATICOS
SIMPLES ESTRUCTURADO
S
Enteros
Reales
Carácter
Booleanos
Array
Cadena
Registro
Archivo
DATOS SIMPLES
TIPO TAMAÑO
CHAR 1 Byte
INT 2 Bytes
FLOAT 4 Bytes
DOUBLE 8 Bytes
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
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
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.
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
TIPOS DE
INSTRUCCIONES
 Instrucciones de INICIO / FIN
 Instrucciones de seleccion.
 Instrucciones condicionales.
 Instrucciones repetitivas.
INSTRUCCIONES
CONDICIONALES
 Se ejecutan de acuerdo a un criterio de evaluación.
SE CLASIFICAN EN:
1. CONDICIONAL SIMPLE
2. CONDICIONAL DOBLE
3. CONDICIONAL MULTIPLE
CONDICIONAL SIMPLE
condición
P1
PSEUDOCODIGO
Inicio
//CONDICION
si condición = verdadera entonces
ejecutar (P1)
fin si
Fin
SINO
JAVA
If ( condición ) {
ejecutar (P1);
}
VISUAL BASIC .NET
If condicion then
ejecutar (P1)
end if
CONDICIONAL DOBLE
condición
P1
SINO
P2
PSEUDOCODIGO
Inicio
//CONDICION
si condición = verdadera entonces
ejecutar (P1)
si no
ejecutar (P2)
fin si
Fin
JAVA
If ( condición ) {
ejecutar (P1);
}
else {
ejecutar (P2):
}
VISUAL BASIC .NET
If condicion then
ejecutar (P1)
else
ejecutar (P2)
end if
}
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);
}
}
ANIDAMIENTO DE ESTRUCTURAS
PSEUDOCODIGO
Inicio
para A1 hasta 10 de 1 en 1 haga
ejecutar (P)
para B1 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);
}
}
CONTADORES
ACUMULADORES
 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
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.

Pricipios de Programación

  • 1.
    PRINCIPIOS DE PROGRAMACION Centro DeEstudios Científicos y Tecnológicos N° 13. Ricardo Flores Magón. 1I10 Ángeles Nieves Erick Raúl Boa Martínez Denisse García Bejarano Gustavo Vargas Zúñiga Tamara Vazcoy Trujillo Adolfo 17/02/2015
  • 2.
    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ño -Darme una ducha. -Vestirme. -Desayunar. -Salir al trabajo.
  • 3.
    CARACTERISCAS Y PARTESDE UN ALGORITMO  Características: ○ PRECISO. ○ DEFINIDO. ○ FINITO.  Partes: ○ ENTRADA. ○ PROCESO. ○ SALIDA.
  • 4.
    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,7 Lenguajes de Alto nivel: Uso de Compiladores e interpretes. Lenguajes de Cuarta Generación: Lenguaje natural. Extract all clientes Where Saldo more than $500.000 Lenguajes de quinta Generación: Desarrollo visual. Interfaces graficas avanzadas. Orientados a IDE.
  • 5.
     Intérpretes: Es untraductor 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
  • 6.
  • 7.
  • 8.
    CASO ESPECIAL JAVA Unix, Linux,Solaris, Windows, Mac
  • 9.
    DATOS DEFINICION DATO: Es unarepresentació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.
  • 10.
    TIPOS DE DATOS DINAMICOS Pilas Colas Listas Árboles ESTATICOS SIMPLESESTRUCTURADO S Enteros Reales Carácter Booleanos Array Cadena Registro Archivo
  • 11.
    DATOS SIMPLES TIPO TAMAÑO CHAR1 Byte INT 2 Bytes FLOAT 4 Bytes DOUBLE 8 Bytes
  • 12.
    DATOS ESTRUCTURADOS SON AQUELLOSQUE 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
  • 13.
    DATOS DINAMICOS SON QUELLOSQUE 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
  • 14.
    DFD’s (Diagramas de Flujode 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.
  • 15.
    PSEUDOCODIGO Es un lenguajede 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
  • 16.
    TIPOS DE INSTRUCCIONES  Instruccionesde INICIO / FIN  Instrucciones de seleccion.  Instrucciones condicionales.  Instrucciones repetitivas.
  • 17.
    INSTRUCCIONES CONDICIONALES  Se ejecutande acuerdo a un criterio de evaluación. SE CLASIFICAN EN: 1. CONDICIONAL SIMPLE 2. CONDICIONAL DOBLE 3. CONDICIONAL MULTIPLE
  • 18.
    CONDICIONAL SIMPLE condición P1 PSEUDOCODIGO Inicio //CONDICION si condición= verdadera entonces ejecutar (P1) fin si Fin SINO JAVA If ( condición ) { ejecutar (P1); } VISUAL BASIC .NET If condicion then ejecutar (P1) end if
  • 19.
    CONDICIONAL DOBLE condición P1 SINO P2 PSEUDOCODIGO Inicio //CONDICION si condición= verdadera entonces ejecutar (P1) si no ejecutar (P2) fin si Fin JAVA If ( condición ) { ejecutar (P1); } else { ejecutar (P2): } VISUAL BASIC .NET If condicion then ejecutar (P1) else ejecutar (P2) end if }
  • 20.
    ANIDAMIENTO DE ESTRUCTURAS PSEUDOCODIGO Inicio //CONDICION sicondició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); } }
  • 21.
    ANIDAMIENTO DE ESTRUCTURAS PSEUDOCODIGO Inicio paraA1 hasta 10 de 1 en 1 haga ejecutar (P) para B1 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); } }
  • 22.
    CONTADORES ACUMULADORES  Los procesosrepetitivos 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
  • 23.
    Recomendaciones:  Se recomiendael 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.