Subir arriba

miércoles, 15 de julio de 2015

Unidad 2

Unidad de Competencia II
Aplica Sintaxis Básicas a Algoritmos


Objetivos

Al terminar la unidad de competencia, el estudiante estará en capacidad de:

1. Identificar las zonas de declaración de variables y constantes en el cuerpo de un algoritmo, tomando en cuenta el orden correspondiente para su desarrollo. 

2. Identificar los tipos de variables en Pascal, sabiendo la utilidad de cada una.

3. Escribir las sintaxis de salida y de entrada de una forma correcta y ajustándola al desarrollo de cualquier código de un algoritmo.

4. Utilizar los operadores matemáticos en cualquier tipo de algoritmo, teniendo en cuenta la escritura correcta de cada sentencia de código.

Conceptos Básicos 
Constante 
Pascal


Como hemos visto en un algoritmo describimos un conjunto de operaciones que debe realizar el computador, para que esas instrucciones las ejecute el computador debemos utilizar un lenguaje de computación que para nuestro caso vamos a ver que requerimos para escribir instrucciones básicas en PASCAL.


Partes de un programa en Pascal.
Un programa en PASCAL se caracteriza por tener las siguientes partes que definen su estructura:

            PROGRAM <Identificador> ;    {Zona de Encabezamiento}
            USES <declaración de unidades>;

            LABEL
            <declaración de etiquetas>

            CONST
            <definición de constantes>

            TYPE
            <declaración de tipos>

            VAR
            <declaración de variables>
            <declaración del procedimiento>
            <declaración de la función>
            BEGIN                                                                     
                        ......
                        { cuerpo del programa }
                        { Instrucciones del Programa }
                        ......

            END.    


Zona de encabezamiento
En ella le damos el nombre al programa. En todo programa debe haber una zona de encabeza­miento. La zona de encabezamiento se inicia con la palabra PROGRAM; seguida por el nombre con que identificamos nuestro programa.

Zona de Declaraciones
En ella se declaran los objetos con que un programa trabaja, en ella se pueden declarar: variables, tipos de datos, constantes, label, procedimientos y funciones.
Un programa en PASCAL no necesita tener todas estas partes, y al declararlas pueden ser escritas en cualquier orden; se recomienda sin embargo seguir el orden propuesto arriba.
Durante el curso veremos en detalle cada una de las partes que conforman la zona de declaraciones y su utilidad.

Declaraciones de Unidades

El Turbo PASCAL le entrega al programador unas biblioteca con funciones y procedimientos, que le permiten realizar distintos tipo de tareas, las cuales vienen en archivos llamados UNIDADES.
Cuando un usuario desea utilizar alguna función o procedimiento de alguna de esas unidades, debe declarar la unidad (biblioteca) que contiene dicha función o procedimiento antes de poder hacer uso de ella en el programa principal.
Los programadores también pueden construir sus propias unidades.
Mas adelante estudiaremos en detalle las unidades y las funciones que suministra.
Las unidades que suministra Turbo Pascal son: DOS, WINCRT, PRINTER, GRAPH, GRAPH3.



Declaraciones de Constantes
Esta zona se caracteriza por iniciar con la palabra CONST seguido por los identificadores de sitios en memoria que van almacenar datos CONSTANTES para ese programa, la zona de declaración de constantes es opcional. 


Declaraciones de Variables
Una variable, es el objeto de un programa que puede cambiar su valor durante la ejecución.

En la realidad, una variable es una celda de memoria conformada por uno o más bytes a la cual le asignamos un nombre para identificarla y es el lugar donde durante la ejecución de un programa almacenamos un dato.

Le decimos, al computador que variables tiene el programa, declarándolas en la zona que comienza con la palabra VAR.

El computador sabe cuantos bytes conforman una variable en memoria por el tipo(dominio) de variable que se le asigna en la declaración de ella.
Todas las variables que maneja un programa deben ser declaradas.


  • Variable Integer
  • Variable Longint
  • Variable Real 
  • Variable Char 
  • Variable String 
  • Variable Boolean

Sintaxis Read y Readln

Estos procedimientos nos permiten entrar uno o más datos desde el teclado para ser almacenadas en alguna celdas en memoria.
              SINTAXIS :
              READ(<lista de variables>);
              READLN(<lista de variables>);

Donde la lista de variables está conformada por el nombre de una o mas variables separadas por comas, para las cuales deseamos entrar datos usando el teclado.

¿Para cuáles variables debemos entrar los datos por el teclado? Para todas aquellas que en el proceso de análisis del problema, veamos que son indispensables para la realización de la tarea que el computador va a realizar y el no puede conocerlos por medios de cálculos o lectura de algún dispositivo de almacenamiento .

EJEMPLOS: Si supone, que quiere entrar los valores a las variables declaradas en un programa podría hacer lo siguiente:

              READ(a,b);
              READLN(a,b,d,e);
              READLN(f);

En un READ o READLN, no se puede leer datos para variables lógicas.

Sintaxis Write y Writeln

Permite escribir mensajes y/o valores en pantalla. Los valores deben estar almacenados en memoria en alguna variable.
SINTAXIS:
WRITE( <item(s)> );
WRITELN(<item(s) >);

Donde el ítem puede ser:
El identificador de una variable : en cuyo caso el computador escribe en pantalla el valor que contenga la variable en el momento de la ejecutar la instrucción.
Ejemplo:  WRITELN(a);           

Una cadena de caracteres encerrada entre comillas simples: en cuyo caso el computador escribe todo lo que encuentre entre las comillas, textualmente en la pantalla.
WRITELN( ´La Vida es una ruleta ´ ) ;

Una expresión matemática: escribirá el resultado de la evaluación de la expresión en la pantalla.
WRITELN(a+b);

Una combinación de los anteriores: Se escriben cada uno de los ítems, siguiendo el comportamiento descritos.
WRITELN(´La X =´, a);

Ejemplo

Supongamos que en un programa de PASCAL se tiene:

            PROGRAM Formatos;
            VAR
                               a  :INTEGER;
                               b  :REAL;
                               c  :CHAR;
                               d  :BOOLEAN;
                               e  :STRING[15];
            BEGIN
                        a:= 45;
                        b:= 1.33;
                        c:='X';
                        d:=false;
                        e:='Turbo';
                        WRITELN(a,b,c,d,e);
            END.

Escribe en la pantalla los resultados así:   

45 1.3300000000E+00XFALSETurbo



+ SUMA.
RESTA.
* MULTIPLICACION.
/ DIVISION DE REALES.
MOD OBTIENE EL RESIDUO DE UNA DIVISION.
DIV DIVISION ENTERA.


Jerarquía de operadores

Cuando el computador evalúa una expresión aritmética sigue los siguientes criterios para obtener el resultado.

1. En una operación aritmética que incluya varios operadores aritméticos, los operadores *, /, DIV, MOD son los operadores aritméticos que tienen mayor prioridad, esto significa que primero se realizan las operaciones que estén asociadas con estos operadores aritméticos.


2. En una expresión aritmética compuesta, las operaciones que están asociadas con los operadores +, ‑ se ejecutan después de haberse ejecutado todos los operadores aritméticos enunciados en la primera regla.

3. Si en una expresión existen varios operadores aritméticos que tengan la misma prioridad, estos se resuelven de izquierda a derecha.


Funciones

Las computadoras no saben realizar por si mismas operaciones complejas como calcular un logaritmo o evaluar la función seno, o tangente, por tal motivo es necesario que los lenguajes le den al programador módulos de programa que le permitan calcular valores usando dichas funciones.

Las funciones que a continuación se describen son módulos de programa que permiten a los usuarios de turbo Pascal evaluar las funciones matemáticas siguientes:

1.1 LN(X): Permite calcular el logaritmo neperiano (base e) del argumento X.
EJEMPLO: En un programa en pascal se puede presentar la siguiente instrucción así:
Y:= Ln(x) + 6;
Las variables x e y deben ser definidas tipo real previamente.
1.2 EXP(X): Permite calcular el exponencial del argumento X, es decir permite calcular x.
EJEMPLO: En un programa en pascal se puede tener que:
Y:= exp(x);
Donde x puede ser una variable definida de tipo entera (INTEGER) o REAL.
1.3 SQRT(X): Permite calcular la raíz cuadrada del argumento. El argumento debe ser mayor o igual que cero y real, el resultado es real. Se usa de igual manera que las funciones anteriores.
1.4 SQR(X): Nos devuelve el argumento elevado al cuadrado. El argumento puede ser de tipo entero o real, el resultado es real. Se usa de igual manera que las funciones anteriores.
1.5 SIN(X), COS(X): Estas dos funciones nos permiten calcular Seno y Coseno respectivamente de su argumento dado en radianes. Se usa de igual manera que las funciones anteriores.
1.6 ARCTAN(X): Esta función devuelve el ángulo en radianes en el rango entre 0 a Pi cuya tangente es el argumento. El argumento y la variable para almacenar el resultado deben ser reales.
1.7 ABS(X): Calcula el valor absoluto de un número dado. El argumento puede ser definido como de tipo INTEGER o REAL.
Más adelante veremos otras funciones en PASCAL.
1.8 PI: Retorna el valor de pi
PI=3,1415926535897932385
EJEMPLO: Si Y es de tipo REAL entonces la expresión:
Y:=3*PI
1.9 TRUNC: Trunca la parte decimal de un número de tipo real, permitiendo obtener un entero longint.
EJEMPLO: Si z vale 3.567 entonces a:=TRUNC(z) permite tener en a el entero 3
1.10 ROUND: Toma el argumento y retorna el entero más cercano.
EJEMPLO: Si en un programa en PASCAL se tiene x:=‑32.51 entonces y:=round(x) hace que y contenga ‑33.
1.11 FRAC: Retorna la parte decimal de un número real.
EJEMPLO: Si a:=5.672355 entonces z:=FRAC(a); almacena en z el decimal 0.672355, z tiene que ser de tipo real;
1.12 INT: Permite obtener la parte entera decimal de un número real.
EJEMPLO: Si a:=5.672355 entonces z:=INT(a); almacena en z el decimal 5.0, z tiene que ser de tipo real.

No hay comentarios.:

Publicar un comentario