Você está na página 1de 54

Sesin 1: Introduccin al lenguaje de

programacin

Ing.Miguel Levano Stella


mlevano@gmail.com

Introduccin al lenguaje de programacin

Ing.Miguel Levano Stella mlevano@gmail.com

Introduccin al lenguaje de programacin


Cul es la funcin de un lenguaje de
programacin?
Qu es un algoritmo?
Cmo se clasifican los lenguajes de
programacin ?
Cul es el procedimiento para construir un
programa?

LOGRO DE SESIN

Al trmino de la sesin, el estudiante


disea algoritmos basado en las
caractersticas de pseudocdigos y
diagrama de flujos, utilizando
estructruras de control,
implementandolos con software de
simulacin con precisin.

TEMARIO
Lenguaje de programacin

Algoritmos
Descripcin de algoritmos

Diseo de un algoritmo
Estructuras de control

Fases para elaborar un programa

Definicin de Lenguaje de programacin


Es un lenguaje artificial
que puede ser usado
para
controlar
el
comportamiento de una
mquina, especialmente
una computadora.
Es una tcnica estndar
de comunicacin que
permite
expresar las
instrucciones que han de
ser ejecutadas en una
computadora.

Clasificacin

Clasificacin por nivel de abstraccin


Lenguaje de Maquina es el
que la computadora entiende
directamente utilizando el
sistema binario (0 y 1) .
Estos dgitos son conocidos
como bits , con los que se
escriben las instrucciones para
que la computadora entienda
que es lo que queremos que
realice.

Clasificacin por nivel de abstraccin


Lenguaje de Bajo nivel
A diferencia del lenguaje
maquina este lenguaje es mas
fcil de utilizar pero tambin
dependen mucho de la
computadora.
El lenguaje ensamblador fue el
primer lenguaje que trato de
sustituir al lenguaje maquina
por otro que se pareciera mas
al de los seres humanos.
Ing.Miguel Levano Stella mlevano@gmail.com

Clasificacin por nivel de abstraccin


Lenguaje de Alto nivel
son muy fciles de aprender por
que utilizan palabras o
comandos de origen natural
como el ingles .
Son independientes de la

maquina y pueden ser usados


desde cualquier computador
con pocas modificaciones.

Clasificacin por su paradigma


Lenguaje de programacin
estructurada La programacin
estructurada se basa en una
metodologa de desarrollo de
programas
llamada
refinamientos sucesivos:
Se plantea una operacin
como un todo y se divide en
segmentos ms sencillos o de
menor complejidad.

Clasificacin por su paradigma


Programacin orientada a
objetos (POO) est basado en
la idea de encapsular estado y
operaciones en objetos.
En general, la programacin
se
resuelve
comunicando
dichos objetos a travs de
mensajes
(programacin
orientada a mensajes).

Ing.Miguel Levano Stella mlevano@gmail.com

Clasificacin por su paradigma


Su principal ventaja es la
reutilizacin de cdigos y su
facilidad para pensar soluciones
a determinados problemas.
Cuando
se
escribe
un
programa en un lenguaje
orientado a objetos, definimos
una plantilla o clase que
describe las caractersticas y el
comportamiento de un conjunto
de objetos similares.

Clasificacin por la forma de ejecucin


Los compiladores e
interpretes son software capaz
de traducir de un lenguaje de
alto nivel al lenguaje
ensamblador especfico de una
mquina.
Los primeros toman todo el
programa en lenguaje de alto
nivel, lo pasan a lenguaje
ensamblador y luego lo
ejecutan.
Los ltimos toman instruccin
por instruccin, la traducen y la
van ejecutando.

Clasificacin por la forma de ejecucin


Un compilador equivale a que
el traductor humano, partiendo
de un texto, prepare otro texto
nuevo
e
independiente,
traducido a la otra lengua.
En contraste, un intrprete
equivale a que tal profesional
traduzca de forma hablada,
cada grupo de palabras o
instruccin, a medida que la
oye, sin dejarlas por escrito

Algoritmos

PROBLEMA

CONSTRUCCION
DEL
ALGORITMO

SOLUCION DE UN PROBLEMA

Ing.Miguel Levano Stella mlevano@gmail.com

PROGRAMA
DE
COMPUTADORA

Algoritmos
Un algoritmo es la secuencia

de pasos ordenados y finitos


con los cuales se da solucin a
una determinada proposicin o
problema.
Es un procedimiento para la

resolucin de problemas de
cualquier tipo por medio de
determinada
secuencia
de
pasos simples y no ambiguos.

Herramientas de un algoritmo
Operadores aritmticos
OPERADOR

SIGNIFICADO

SUMAR

RESTAR

MULTIPLICAR

DIV
/
MOD, %

DIVISION ENTERA
DIVISION REAL
RESTO ARTIMETICO

POTENCIACION

Herramientas de un algoritmo
Operadores relacionales
OPERADOR

SIGNIFICADO

>

MAYOR

<

MENOR

>=

MAYOR o IGUAL

<=

MENOR o IGUAL

IGUAL

<>

DIFERENTE

Ing.Miguel Levano Stella mlevano@gmail.com

Herramientas de un algoritmo
Operadores lgicos
OPERADOR

SIGNIFICADO

& (Y)

CONJUNCION

| (O)

DISYUNCION

NO

NEGACION

Observe la tabla

Herramientas de un algoritmo
Operadores de asignacin y agrupacin
OPERADOR

SIGNIFICADO

ASIGNAR

()

AGRUPAR

Ing.Miguel Levano Stella mlevano@gmail.com

Herramientas de un algoritmo

Qu es una variable ?
Es una entidad con
nombre nico en un
algoritmo y a la que se
le puede asignar un
valor y luego realizar
algn tipo de calculo o
comparacin.
Las variables pueden
asumir valores
numricos,
alfanumricos y
lgicos.

Formacin del nombre de Variables

El nombre de una variable esta formada por una


coleccin de caracteres alfabticos (A..Z,a..z),
dgitos (0..9) y por el carcter subrayado ( _ ).

El nombre de una variable siempre debe comenzar


por un carcter alfabtico o por el carcter subrayado.

El nombre de una variable JAMAS debe comenzar


con un digito.

El nombre de una variable no debe contener espacios


en blanco o caracteres especiales tales como (, #, $,
%, &, @, etc).

El nombre de una variable no debe coincidir con una


palabra clave de un algoritmo (SI, SINO, MIENTRAS,
PARA, REPETIR, etc)

Formacin del nombre de Variables


DECLARACION

VALIDEZ

ABC

VALIDO

A123

VALIDO

1A2B

NO VALIDO

_MiVariable

VALIDO

Mi_Variable

VALIDO

Mi_123456

VALIDO

_1_2_3

VALIDO

Mi@Variable

NO VALIDO

Ing.Miguel Levano Stella mlevano@gmail.com

Tipos de datos

NUMERICOS
Entero
Real

ALFANUMERICOS
Carcter
Cadena

LOGICOS (Verdad o
Falso)

Descripcin del algoritmo


Para describir un algoritmo

se debe utilizar algn mtodo


que permita independizar
dicho algoritmo del lenguaje
de programacin.
Diagramas de flujo

Pseudocdigo

Diagramas de flujo
Es una representacin detallada
en forma grfica (mediante
smbolos) de los pasos que se
realizan para la solucin de un
problema unidos por flechas,
denominadas lneas de flujo,
que indican la secuencia de
ejecucin.

Ing.Miguel Levano Stella mlevano@gmail.com

Smbolos de los diagramas de flujo


INICIO - FIN
Este smbolo indica el comienzo y el final de un ALGORITMO

ENTRADA-SALIDA
Este smbolo indica operaciones que tienen relacin con los

dispositivos de entrada/salida.
PROCESO
Este smbolo se utiliza para indicar operaciones aritmticas.

DECISION
Este smbolo se utiliza para indicar en su interior comparaciones

de valores tales como:

a=b
j<i

Estas comparaciones admiten dos salidas: verdad falso

Pseudocdigo
Es la descripcin de un

algoritmo
mediante
una
secuencia
lgica
de
acciones, que en su conjunto
forman la solucin del
problema,
utilizando
generalmente
palabras
reservadas para representar
las acciones.
PALABRAS RESERVADAS
Leer , Escribir , Dimension
Si-Entonces-Sino, Segun
Mientras Hacer, Repetir Hasta Que, Para

Diseo de algoritmos

Ing.Miguel Levano Stella mlevano@gmail.com

Anlisis del problema

Ing.Miguel Levano Stella mlevano@gmail.com

EJEMPLO
Disear un algoritmo (pseudocdigo y
diagrama de flujo) para hallar el rea de un
tringulo rectngulo cuya Base mide 3 cm,
la Altura 4 cm y la Hipotenusa 5 cm.

ANLISIS DEL PROBLEMA


Formular el problema: Ya se encuentra
claramente planteado.
Resultados esperados: El rea de un
tringulo rectngulo.
Datos disponibles: Base, Altura,
Hipotenusa, tipo de tringulo.
La incgnita es el rea y todos los valores
son constantes.

Determinar las restricciones: Utilizar las


medidas dadas.
Procesos necesarios: Guardar en dos
variables (BASE y ALTURA)
los valores de Base y Altura; Guardar en
una constante (DIV) el divisor 2;
aplicar la frmula BASE*ALTURA/DIV y
guardar el resultado en la variable AREA;
comunicar el resultado (AREA).

ALGORITMO EN SEUDOCDIGO
Paso 1: Inicio
Paso 2: Asignar el nmero 2 a la constante "div"
Paso 3: Asignar el nmero 3 a la constante
base
Paso 4: Asignar el nmero 4 a la constante
altura
Paso 5: Guardar en la variable "rea" el
resultado de base*altura/div
Paso 6: Imprimir el valor de la variable "rea"
Paso 7: Final

ALGORITMO EN DIAGRAMA DE FLUJO


Ing.Miguel Levano Stella mlevano@gmail.com

Ejemplo1 : Ingrese un nmero entero, luego


smele 2 unidades y visualcelo.

ALGORITMO Ejemplo1
VARIABLES
ENTERO
A
INICIO
LEER( A )
A A + 2
ESCRIBIR( A )
FIN

Estructuras de control
La estructura secuencial
permite la ejecucin de la lista
de instrucciones en el orden en
que aparecen las instrucciones,
es decir, se ejecuta
primero la
instruccin <instruccin 1>
luego la
instruccin <instruccin 2>, y
por ltimo se ejecuta
la instruccin <instruccin n>

ACTIVIDADES

Trabajo colaborativo
Los estudiantes en pares, disean
algoritmos basados en
pseudocdigos y diagrama de
flujos, utilizando estructura de
control secuencial con software de
simulacin con precisin.
(Ver actividad 1 de la gua de laboratorio 1)

Ing.Miguel Levano Stella mlevano@gmail.com

Estructuras de control de seleccin

Estructuras de control
La estructura de Seleccin
permite la ejecucin de un
bloque de instrucciones o de
otro dependiendo del valor de
una expresin lgica
denominada Condicion.

La sentencia condicional o selectiva evala una


CONDICION (expresin lgica)

Estructuras de control

if ( expresin a
evaluar )
{
accin_1;
accin_2;
}

SENTENCIA IF (o selectiva
simple)
Las que como resultado de una
expresin
que
se
est
evaluando,
solo
podemos
ejecutar
una
opcin
por
verdadero.

Estructuras de control

Ejemplo Crear un algoritmo ,df


y programa que nos permita
ingresar un numero y mostrar si
es mayor que 10

Estructuras de control

if (condicin)
{ grupo cierto de
instrucciones;}
else
{ grupo falso de
instrucciones; };

SENTENCIA IF ELSE (o
selectiva doble)
Esta sentencia permite realizar
una bifurcacin en la ejecucin
secuencial del programa, segn
se cumpla o no cierta condicin,
se ejecutara una parte u otra
parte del programa .

Estructuras de control
Realizar un diagrama que dado
un promedio de tres notas
calcule si el alumno esta
aprobado, caso contrario que
diga que este reprobado

Estructuras de control

CASE OF (selectiva multiples )


Permite realizar una bifurcacin
(como la sentencia IF-ELSE) en
una ejecucin secuencial del
programa
para
varias
posibilidades.

Estructuras de control
Disear un algoritmo que lea un entero positivo n y
realice las siguientes clculos:

Si N termina en 0 se cambia por el doble


Si N termina en 3 se cambia por la dcima parte

De otro modo matiene su valor inicial

Ing.Miguel Levano Stella mlevano@gmail.com

Estructuras de control
Proceso Problema
leer n1, n2;
leer opcion;
segun opcion Hacer
1: suma <- n1 + n2;
Escribir "suma = ", suma;
2: resta <- n1 - n2;
Escribir "resta = ", resta;
3: multiplica <- n1*n2;
Escribir "multiplica = ", multiplica;
4: divide <- n1/n2;
Escribir "divide = ", divide;
5: potencia <- n1^n2;
Escribir "potencia = ", potencia;
De Otro Modo:
Escribir "Numero no Definido" ;
FinSegun
FinProceso

ACTIVIDADES

Trabajo colaborativo
Los estudiantes en pares,
disean algoritmos basados en
pseudocdigos y diagrama de
flujos, utilizando estructuras de
control de seleccin
implementandolos con
software de simulacin con
precisin.
(Ver actividad 2 de la gua de laboratorio
1)
Ing.Miguel Levano Stella mlevano@gmail.com

Fases para elaborar un programa

ACTIVIDADES

Trabajo colaborativo
Los estudiantes en pares,
disean algoritmos basados en
pseudocdigos y diagrama de
flujos, utilizando estructuras de
control implementandolos en
C++ con precisin.
(Ver actividad 3 de la gua de laboratorio
1)

Ing.Miguel Levano Stella mlevano@gmail.com

INTRODUCCION AL LENGUAJE DE
PROGRAMACION
Por qu es importante saber manejar los
lenguajes de programacin?

Cmo aprend a disear un


algoritmo ?
Cules son las ventajas de los algoritmos
Cul es la importancia del software de
simulacin para la elaboracin de algoritmos y
programacin?
Qu dificultades tuve y cmo las super?

ACTIVIDADES

Trabajo colaborativo
Los estudiantes disean
algoritmos basados en
pseudocdigos y diagrama de
flujos, utilizando estructuras de
control implementandolos en
C++ con precisin.
Y lo publican en el aula virtual
(Ver trabajo practico de la gua de
laboratorio 1)

REFERENCIAS BIBLIOGRAFICAS
N

Cdigo

Autor

Ttulo

Edicin, ao de
publicacin,
Editorial

005.1
33P
VASQ

Vsquez
Paragulla,
Julio

Diseo de programacin: 200


algoritmos y un proyecto de
aplicacin.

Lima:
Marcos,
3ra ed.

EBook
en
biblioteca
virtual UPN

Cairo
,
Oswaldo

Fundamentos
de
programacin.Piensa en C++.

Mexico:Pearson
Education,2006
.Primera
edicion.

Ing.Miguel Levano Stella mlevano@gmail.com

San
1997.

Você também pode gostar