viernes, 25 de marzo de 2011

COLEGIO DE CIENCIAS Y HUMANIDADES PLANTEL SUR

MARIO ALONSO GONZALEZ RAMIREZ

PASCAL

CIBERNETICA Y COMPUTACION

GRUPO 662

PROFESOR LUIS ENRIQUE RODRIGUEZ MALDONADO

INDICE

1.INTRODUCCION
2.MODELO DE SOLUCION
3.VARIABLES
4.TIPOS DE DATOS
5.OPERADORES ARITMETICOS
6.JERARQUIA DE OPERACIONES
7.PROGRAMACION ENTRADA/SALIDA
8.FORMATO DE PANTALLA
9.INSTRUCCIONES DE CONTROL DE PROGRAMA
10.INSTRUCCIONES CONDICIONALES
11.CONDICIONES SIMPLES
12.ISNTRUCCIONES IF
13.CONDICIONES COMPUESTAS
14.INSTRUCCIONES CASE
15.CICLO FOR PASCAL
16.CICLO WHILE PROGRAMACION PASCAL
17.CICLO REPEAT UNTIL PASCAL

INDTRODUCCION PASCAL

Los nuevos sistemas de informacion son costosos en tiempos y recursos, la solucion moderna de sistemas de informacion exigen nuevas herramientas y metodologias para resolver rapida, economica y eficiente los problemas de informacion planteados por las organizaciones.

Aun mas el pleno potencial del hardware no es aprovechado plenamente y existe un considerable retraso con el software y sus aplicaciones, generando lo que se conoce como “crisis del software”.

En programacion tradicional, modular o estructurada un programa describe una serie de pasos a ser realizados para la solucion de un problema, es decir es un algoritmo, en particular este modelo de programacion se uso mucho para generar programas o aplicaciones en ambientes pc's y con consolas, es decir el programa se ejecutaba en una consola de msdos por ejemplo, y el programa o aplicacion se tenia que portar fisicamente a otras pc's, al final de su ciclo de vida de este modelo se habia mejorado y ya era posible que se ejecutara en alguna ventana-consola de ambientes windows, con mejor interfase como fonts, colores, background, etc.

En programacion orientada a objetos ( OOP ) un programa es considerado como un sistema de objetos interactuando entre si, ambientes de desarrollo visuales facilitan aun mas la construccion de programas y solucion de problemas, porque permiten abstraer al ingeniero de software de todo el GUI (interfase grafica) del problema, que constituye mas del 60% del codigo normal de un programa, en general este ambiente permitio una mejora en la interfase del programa con el usuario de la aplicacion ya que en este caso solo se manejaban formas o ventanes llenas de componentes o controles especializados en alguna tarea especifica.

A este modelo de programacion o construccion de programas los compiladores modernos se adaptaron rapidamente y tenemos aplicaciones fantasticas, en donde alguna forma o ventana esta llena de controles visibles e invisibles que realizan muchas tareas donde ademas de los componentes o controles que proporciona directamente el compilador cuando se instala, existen miles de controles o componentes extras en muchas partes del mundo realizados por programadores talentosos y que enriquecen el contenido de nuestros programas y aplicaciones visuales.

Al principio estas aplicaciones, se construian pensando en que se ejecutaban en una pc con ambiente grafico o en una serie de pc's proximas fisicamente sin embargo el rapido avance de las redes dentro de las empresas u organizaciones conllevan a que los fabricantes de compiladores cada vez incluyeran mas y mas controles o componentes que permitan ejecutar el programa o aplicacion simultaneamente en una red de pc's.

Sin embargo cuando se habla de redes actuales estamos hablando de la red de redes (internet) y si en redes internas o intranets el retraso en el tiempo de comunicacion entre sus pc's internas y la cantidad de informacion a trasmitir entre las mismas no es algo muy importante o inmanejable, este problema de tiempo de trasmision y cantidad de informacion, si es un factor muy importante cuando se pretende construir programas o aplicaciones que deban compartirse o usarse por muchas pc's conectadas a internet, desgraciadamente como factor externo que es, no esta bajo control de la empresa o del programador.

PASCAL, es un compilador que permite usar cualquiera de los tres enfoques en la solucion de problemas de informacion que puedan y deban ser resueltos empleando el computador y el lenguaje aunque se repite este curso esta enfocado al primer modelo.

MODELO DE SOLUCION

En general un problema de informacion es posible entenderlo, analizarlo y descomponerlo en todos sus componentes o partes que de una u otra manera intervienen tanto en su planteamiento como en su solucion.

Una herramienta rapida que nos permite descomponer en partes un problema para su solucion, es el llamado modelo de solucion, este consiste de una pequena caja que contiene los tres elementos mas basicos en que se puede descomponer cualquier problema sencillo de informacion, estas tres partes son:

LA PRIMERA PARTE son todos los datos que el computador ocupa para resolver el problema, estos datos son almacenados internamente en la memoria del computador en las llamadas variables de entrada.
LA SEGUNDA PARTE son todas las operaciones generalmente algebraicas necesarias para solucionar el problema, generalmente esta parte del modelo es una formula (o igualdad matematica, ej. X= y + 5).
LA TERCERA PARTE es el resultado o solucion del problema que generalmente se obtiene de la parte de operaciones del modelo y dichos datos estan almacenados en las llamadas variables de salida.
En resumen para todo problema sencillo de informacion es necesario plantearse las siguientes preguntas:

Que datos ocupa conocer el computador para resolver el problema y en cuales variables de entrada se van a almacenar ?

Que procesos u operaciones debe realizar el computador para resolver el problema planteado.

Que informacion o variables de salida se van a desplegar en pantalla para responder al problema planteado originalmente?

Como nota importante no confundir los terminos datos, variables e informacion;

Datos se refiere a informacion en bruto, no procesada ni catalogada, por ejemplo “Tijuana”, “calle primera # 213”,”15 anos”, ” $2,520.00”, etc.

Variables es el nombre de una localidad o direccion interna en la memoria del computador donde se almacenan los datos, ejemplo de variables para los casos del inciso anterior, CIUDAD, DIRECCION, EDAD, SUELDO, ETC.

Informacion son datos ya procesados que resuelven un problema planteado.

EJEMPLO DE MODELO DE SOLUCION

Construir un modelo de solucion que resuelva el problema de calcular el area de un triangulo con la formula area igual a base por altura sobre dos.

Variable(s) de Entrada Proceso u Operacion Variable(s) de Salida
BASE ALTURA AREA= BASE * ALTURA / 2 AREA
PROBLEMA 2.- CONVERTIR LA EDAD EN ANOS DE UNA PERSONA A MESES.

PROBLEMA 3.- CONVERTIR PESOS A DOLARES.

PROBLEMA 4.- CALCULAR EL AREA DE UN CIRCULO CON LA FORMULA



PROBLEMA 5.- EVALUAR LA FUNCION PARA CUALQUIER VALOR DE X.

Observar para el caso de constantes fijas o conocidas (PI) no se debe dar como dato de entrada su valor, en cambio colocar directamente su valor dentro de la formula, en la parte de operaciones del problema.

Pero recordar tambien que existiran problemas sencillos donde:

No se ocupan entradas o no se ocupan operaciones, pero todos ocupan salida.

Una formula grande o muy compleja puede ser mas segura y facil de resolver, si es descompuesta y resuelta en partes, juntando al final los parciales para obtener el resultado final.

Un problema puede tener mas de una solucion correcta.

El problema no esta suficientemente explicado o enunciado, entonces, estudiarlo, analizarlo y construirlo de manera generica.

VARIABLES

Identificadores son conjuntos de letras y/o numeros que se utilizan para simbolizar todos los elementos que en un programa, son definibles por el usuario (programador o ingeniero de software) del mismo, como son las variables donde se almacenan datos, funciones( pequenos modulos con codigo), etiquetas, clases, objetos, etc.

En PASCAL un identificador es una palabra compuesta de letras y/o numeros de hasta 32 caracteres significativos, empezando siempre con una letra.

Una variable se define como un identificador que se utiliza para almacenar todos los datos generados durante la ejecucion de un programa.

Existen ciertas reglas en cuanto a variables:

Claras y con referencia directa al problema.

No espacios en blanco, ni simbolos extranos en ellas.

Se pueden usar abreviaturas, pero solo de caracter general.

No deben ser palabras reservadas del lenguaje.

Ejemplos de buenas variables:

Nombre, Edad, SdoDiario, IngMensual, Perimetro, Calif1, etc.

TIPOS DE DATOS

A toda variable que se use en un programa, se le debe asociar (generalmente al principio del programa) un tipo de dato especifico.

Un tipo de dato define todo el posible rango de valores que una variable puede tomar al momento de ejecucion del programa y a lo largo de toda la vida util del propio programa.

Los tipos de datos mas comunes en pascal son:

TIPO DATO RANGO
char Caracter ASCII
byte 0 a 255
integer -32,768 a 32,767
Real 1E-38 a 1E+38
Boolean TRUE o FALSE
shortint -128 a 127
word 0 a 65535
longint -2147483648 a 214748364
String Cadena 255 caracteres
Para el caso de strings se prodra usar cualquiera de los dos siguientes formatos:

Var

Nombre:string;

Carrera:string[30];

Para el primer caso pascal reserva 255 bytes de memoria, para el caso de carrera pscal solo reservara 30 bytes, es obvio cual de los dos casos es mas eficiente.

OPERADORES ARITMETICOS

Un operador es un simbolo especial que indica al compilador que debe efectuar una operacion matematica o logica.

Pascal reconoce los siguientes operadores aritmeticos:

Operador Operacion
+ SUMA
- RESTA
* MULTIPLICACION
/ DIVISION
Div DIVISION ENTERA
Mod MODULO O RESIDUO
Como nota importante a recordar siempre;

Si se usa el operador DIV en problemas de division entre enteros, pascal trunca la parte residual, es decir;


// area de declaracion de variables

real a;

// area de operaciones

a := 10 div 4;

// area de despliegue de resultados

desplegar a; s --- En pantalla sale ( 2.000000 )

El problema no es el tipo real, sino que por definicion de la division entre enteros pascal trunca la parte residual.

El operador (%) devuelve el residuo entero de una division entre enteros, ejemplo;


// area de declaracion

integer alfa;

// area de operaciones

alfa := 23 mod 4;

// area de despliegue

desplegar alfa; <- El resultado en pantalla es 3

Otro ejemplo;

alfa := 108 mod 10;

desplegar alfa; ← El resultado en pantalla es 8

Para resolver los problemas de potencias y raices, se usan ciertas instrucciones especiales que proporciona el lenguaje, llamadas funciones matematicas, en pascal existe todo un conjunto de instrucciones o funciones matematicas.

Y ademas deberan recordar sus leyes de logaritmos y de potencias:

Con el uso de los logaritmos, los procesos de multiplicacion, division, elevacion a potencias y extraccion de raices entre numeros reales pueden simplificarse de la manera siguiente.

1.- El logaritmo de un producto es igual a la suma de los logaritmos de los factores.

Log ( a . m) = log a + log m

2.- El logaritmo de un cociente es igual a la diferencia de los logaritmos de los terminos

Log(a:m) = log a - log m

3.-El logaritmo de una potencia es igual al exponente por el logaritmo de la base.

Log am = m * Log a

4.- El logaritmo de una raiz es igual al logaritmo del radicando dividido por el indice de la raiz

log = m/n log a

Las dos funciones que se usan para resolver este problema son:

Ln(x) ←- Nos regresa el logaritmo natural del numero x.

EXP(x) ←- nos regresa eX es decir el antilogaritmo de un numero.

Otra vez si se ocupa resolver la multiplicacion de 5 * 20, la regla de logaritmos nos dice que el resultado es = log(5) + log(20) aunque en pascal se usa Ln(5) + Ln(20) pro en estos casos lo que se tiene de resultado no es 100 sino el logaritmo de 100, porque estamos sumando los logaritmos, es decir al resultado de la suma de logaritmos le tenemos que sacar su antilogaritmo, para conocer el resultado final(100) de la mulptiplicacion.