Download Introducción Teórica

Document related concepts
no text concepts found
Transcript
A continuación estudiaremos a qué se refiere el término «programación»,
qué es un lenguaje de programación y veremos alguna terminología propia
de programación y cómo se utiliza.
1
Por sí sólo, un equipo no es muy inteligente.
Un equipo es, en esencia, un montón de circuitos electrónicos que están
encendidos o apagados.
Al establecer diferentes combinaciones de estos circuitos, se puede hacer que la
computadora haga algo, por ejemplo, mostrar algo en pantalla o emitir un
sonido.
¿Qué es un lenguaje de programación?
Las personas se expresan utilizando idiomas con muchas palabras.
Los equipos usan un lenguaje simple que consta únicamente de ceros (0) y unos
(1), donde un cero significa "apagado" y un uno, "encendido". Tratar de hablar
con un equipo en su lenguaje sería como conversar con los amigos en código
Morse: es posible pero, sin duda ¡muy difícil!
Un lenguaje de programación actúa como traductor entre la persona y el equipo.
En lugar de aprender el lenguaje nativo del equipo (conocido como "lenguaje de
máquina"), la persona usa un lenguaje de programación para dar
instrucciones al equipo de un modo más sencillo de aprender y de comprender.
Ese lenguaje de programación se traduce en ceros (0) y unos (1) para que el
equipo proceda.
2
3
Existen muchos lenguajes de programación en el mercado y cada uno de ellos
cuenta con instrucciones para realizar diversas operaciones. Los distintos
lenguajes de programación le dan diferente nombre a las instrucciones, que tal
vez sirvan para realizar la misma acción.
Con el objetivo de permitir escribir el esquema de un algoritmo, indicando los
pasos a seguir con lenguaje natural e independiente de cómo se llaman las
instrucciones en los distintos lenguajes de programación, existe lo que se
llama Pseudocódigo.
El pseudocódigo es básicamente un lenguaje natural y sencillo, independiente
de los diversos lenguajes de programación del mercado, que permite escribir el
esquema de un algoritmo, indicando los pasos a seguir de forma detallada y
clara.
Las principales características del pseudocódigo son:
-
Es una forma de representación sencilla de utilizar y de manipular.
Es independiente del lenguaje de programación que se vaya a utilizar.
Facilita el pensar y escribir un algoritmo.
Es un esquema de lo que luego se escribirá en el lenguaje de programación
elegido.
Para almacenar datos temporalmente en memoria, debemos definir una
variable con un nombre que la identifique y un tipo de datos a almacenar
(numérico, caracter, etc.).
Ejemplos:
1)
A = 50;
Variable de nombre A, de tipo numérica y a la cual se le asigna el valor 50.
2)
Ciudad = “Montevideo";
Variable de nombre Ciudad, de tipo alfanumérica o carácter, a la cual se le
asigna el valor «Montevideo».
3)
X = A + B;
Variable numérica X, a la cual se le asigna el resultado de la suma de los
valores de las variables numéricas A y B.
6
7
8
Dado que puede no llegar a leerse el ejemplo de la transparencia, se incluye
a continuación el mismo:
DO C ASE
C ASE &dia=1
msg(‘lunes’)
C ASE &dia=2
Variable &dia está en pantalla
para que el usuario ingrese
valor entre 1 y 7 y que el
programa
despliegue
el
nombre del día de la semana
msg(‘martes’)
C ASE &dia=3
msg(‘miércoles’)
C ASE &dia=4
msg(‘jueves’)
C ASE &dia=5
msg(‘viernes’)
C ASE &dia=6
msg(‘sábado’)
C ASE &dia=7
msg(‘domingo’)
OTHERWISE
msg(‘Debe ingresar nro entre 1 y 7’)
ENDC ASE
Do while es una estructura de control que en la mayoría de lenguajes de
programación se llama igual.
Su objetivo es permitir que una secuencia de instrucciones se ejecuten una y
otra vez, repetitivamente hasta que se cumpla determinada condición.
En el ejemplo propuesto, hay 1 variable definida de nombre &Num y tipo
numérica. La primer instrucción le asigna el valor 1. Luego se comienza a
ejecutar la estructura de control repetitiva Do while, es decir «Hacer
mientas la condición se cumpla». La condición es que la variable &Num sea
menor que 10. Inicialmente dicha condición se cumple ya que la variable tiene
el valor 1. El algoritmo entra al Do while, por cumplirse la condición y las
sentencias definidas dentro de la estructura repetitiva son:
1) Mostrar el nro
2) Sumarle 1 al nro
A continuación se vuelve a evaluar la condición del Do while y la condición
vuelve a cumplirse, ya que la variable &Num tiene el valor 2, que es menor
que 10. Así, el algoritmo entra al Do while y las sentencias definidas dentro
de la estructura repetitiva son:
1) Mostrar el nro
2) Sumarle 1 al nro
A continuación se vuelve a evaluar la condición del Do while, la condición
vuelve a cumplirse porque la variable &Num tiene el valor 3, que es menor que
10, y así continúa procediendo sucesivamente hasta que no se cumpla más la
condición del Do while.
13
14
Es importante tener en cuenta que no hay una única forma de resolver cierta
necesidad. Tal vez un programador escriba cierta solución válida y otro
programador escriba otra solución que es válida también para resolver lo mismo.
Sin embargo, es bueno tratar de programar lo más sencillo y entendible posible,
así como lo más corto posible que se nos ocurra.
En la próxima página se muestran 2 soluciones que se les ocurrió a distintos
programadores, para validar que un día y mes ingresados por el usuario, sean
válidos.
La primer solución es más corta que la segunda y tal vez más clara y simple, pero
igual son válidas ambas alternativas, ya que resuelven lo mismo, y la segunda
solución no es demasiado compleja tampoco.
15
DO C ASE
&FechaCorrecta=True
C ASE &mes=1 AND (&dia<1 OR &dia>31)
DO C ASE
msg(‘ingresó una fecha errónea’)
C ASE &mes=2 AND (&dia<1 OR &dia>28)
msg(‘ingresó una fecha errónea’)
C ASE &mes=3 AND (&dia<1 OR &dia>31)
msg(‘ingresó una fecha errónea’)
C ASE &mes=4 AND (&dia<1 OR &dia>30)
msg(‘ingresó una fecha errónea’)
C ASE &mes=5 AND (&dia<1 OR &dia>31)
msg(‘ingresó una fecha errónea’)
C ASE &mes=6 AND (&dia<1 OR &dia>30)
msg(‘ingresó una fecha errónea’)
C ASE &mes=7 AND (&dia<1 OR &dia>31)
msg(‘ingresó una fecha errónea’)
C ASE &mes=8 AND (&dia<1 OR &dia>31)
msg(‘ingresó una fecha errónea’)
C ASE &mes=9 AND (&dia<1 OR &dia>30)
msg(‘ingresó una fecha errónea’)
C ASE &mes=10 AND (&dia<1 OR &dia>31)
msg(‘ingresó una fecha errónea’)
C ASE &mes=11 AND (&dia<1 OR &dia>30)
msg(‘ingresó una fecha errónea’)
C ASE &mes=12 AND (&dia<1 OR &dia>31)
msg(‘ingresó una fecha errónea’)
ENDC ASE
C ASE &mes=1 AND (&dia<1 OR &dia>31)
&FechaCorrecta=False
C ASE &mes=2 AND (&dia<1 OR &dia>28)
&FechaC orrecta=False
C ASE &mes=3 AND (&dia<1 OR &dia>31)
&FechaC orrecta=False
C ASE &mes=4 AND (&dia<1 OR &dia>30)
&FechaCorrecta=False
C ASE &mes=5 AND (&dia<1 OR &dia>31)
&FechaCorrecta=False
C ASE &mes=6 AND (&dia<1 OR &dia>30)
&FechaCorrecta=False
C ASE &mes=7 AND (&dia<1 OR &dia>31)
&FechaCorrecta=False
C ASE &mes=8 AND (&dia<1 OR &dia>31)
&FechaCorrecta=False
C ASE &mes=9 AND (&dia<1 OR &dia>30)
&FechaCorrecta=False
C ASE &mes=10 AND (&dia<1 OR &dia>31)
&FechaCorrecta=False
C ASE &mes=11 AND (&dia<1 OR &dia>30)
&FechaCorrecta=False
C ASE &mes=12 AND (&dia<1 OR &dia>31)
&FechaC orrecta=False
ENDC ASE
IF &FechaC orrecta=False
msg(‘ingresó una fecha errónea’)
ENDIF
•
Observar que se incluyeron tantos CASE como se necesitaron contemplar.
•
Observar que no se incluyó OTHERWISE, porque si el día y mes ingresados son correctos, no se
desea realizar nada. Solamente se desea validar e informar si el ingreso de datos fue incorrecto.
16