Turbo pascal

1.424 visualizaciones

Publicado el

0 comentarios
2 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
1.424
En SlideShare
0
De insertados
0
Número de insertados
61
Acciones
Compartido
0
Descargas
39
Comentarios
0
Recomendaciones
2
Insertados 0
No insertados

No hay notas en la diapositiva.

Turbo pascal

  1. 1. UNIVERSIDAD DEL NORTE DE NICARAGUA SEDE SOMOTOTURBO PASCALPROGRAMACIÓN IING. JUAN CARLOS TINOCO PANIAGUA 12
  2. 2. TURBO PASCAL Palabras reservadasPara poder programar en cualquier lenguaje es necesario conocer los códigosmediante los cuales podamos expresar las tareas que queremos realizar. El TurboPascal, como lenguaje de programación pose su propio código con palabras de usoexclusivo para ciertas funciones, a estas palabras les llamaremos palabras reservadasde Turbo Pascal.Las palabras reservadas de Turbo Pascal (versiones 6.0 o mayores) son: Pascal Estandar y Turbo Pascal 6.0 AND ARRAY BEGIN CASE CONST DIV DO DOWNTO ELSE END FILE FOR FORWARD FUNCTION GOTO IF IN LABEL MOD NIL NOT OF OR PACKED PROCEDURE PROGRAM RECORD REPEAT SET THEN TO TYPE UNTIL VAR WHILE WITH Turbo Pascal ABSOLUTE ASM DESTRUCTOR IMPLEMENTATION INTERFACE OBJECT PRIVATE SHR UNIT VIRTUAL CONSTRUCTOR EXTERNAL INLINE INTERRUPT SHL STRING USES XOREstas palabras no pueden ser usadas como identificadores (siguiente tópico) ya quecada una de ellas tiene una función definida en Turbo Pascal. IdentificadoresLos identificadores son palabras que representan constantes, variables, tipos de datos,procedimientos, funciones y algunos otros datos. Existen dos tipos de identificadores:los predefinidos de Turbo Pascal y los definidos por el programador.Algunos de los identificadores predefinidos son: integer, real, byte, sin, ... 2 Ing. Juan Carlos Tinoco Paniagua
  3. 3. TURBO PASCALLos identificadores definidos por el programador son los elementos del lenguaje talescomo variables, procedimientos, funciones, etc.Un identificador es una secuencia de 1 a 127 caracteres, que inicia con una letra, notienen espacios ni símbolos: &, !, *, etc. y no es alguna palabra reservada.Para el Turbo Pascal no existen diferencias entre mayúsculas y minúsculas, así que aun identificador denominado "valor" se le puede referir como "VALOR" o "VaLoR".Todo identificador en Pascal debe ser definido previamente a su utilización. Tipos de datosEl manejo de la información en Turbo Pascal se realiza mediante diferentes clases dedatos. En este apartado se tratarán los principales tipos y conforme se vayannecesitando se explicaran los demás. Integer Números enteros sin parte decimal. Char Caracteres del código ASCII Boolean Pueden contener los valores de falso o verdadero Real Números que pueden incluir una parte decimal String En una secuencia de caracteres que se trata como un solo dato. Variables y constantesLos tipos de datos que manejaremos en nuestro programa pueden ser de dos clases:variables o constantes.Como su nombre lo indica las variables pueden cambiar a lo largo de la ejecución deun programa, en cambio las constantes serán valores fijos durante todo el proceso.Un ejemplo de una variable es cuando vamos a sumar dos números que seránintroducidos por el usuario del programa, éste puede introducir dos valorescualesquiera y no sería nada útil restringirlo a dos valores predefinidos, así quedejamos que use los valores que el necesite sumar.Ahora, si nuestro programa de operaciones matemáticas va a utilizar el valor de PIpara algunos cálculos podemos definir un identificador PI con el valor de 3.1415926constante, de tal forma que PI no pueda cambiar de valor, ahora en lugar de escribirtodo el número cada vez que se necesite en nuestro programa, solo tenemos queescribir PI.Las variables y constantes pueden ser de todos los tipos vistos anteriormente:numéricos tanto enteros como reales, caracteres, cadenas de caracteres, etc. 3 Ing. Juan Carlos Tinoco Paniagua
  4. 4. TURBO PASCAL ComentariosEs posible introducir comentarios en nuestro programa que sirvan únicamente paramejorar la comprensión del código fuente.Un comentario no es tomado en cuenta al momento de la compilación del programa yes de enorme importancia al momento de crearlo, modificarlo o mantenerlo.Existen dos formas de colocar comentarios en un programa de Turbo Pascal, entrellaves: {Comentario} o entre paréntesis y asteriscos: (*Comentario*). Estructura de los programasEl lenguaje utilizado en Turbo Pascal es estructurado, lo que significa que cadaprograma requiere una forma específica de escritura para que sea entendido por elcompilador.Todo programa cuenta con algunas partes o módulos los cuales son: Cabecera Declaraciones ProgramaLa cabecera del programa únicamente lleva el nombre del programa. En la sección dedeclaraciones se le indica al compilador todos los identificadores y unidades que seutilizarán durante la ejecución del programa. En la sección del programa se escribe elcódigo de instrucciones que se llevarán a cabo. Sentencia PROGRAMLa sentencia PROGRAM es la declaración del nombre del programa.Consta de tres partes: la palabra reservada PROGRAM, a continuación un identificadorutilizado como el nombre del programa y al final un punto y coma ";". Por ejemplo: PROGRAM suma_de_dos_numeros ;Esta declaración es siempre la primera línea en cualquier programa de Turbo Pascal. Declaración de unidadesLas unidades son módulos independientes del programa que, aunque no sonejecutables por si mismos, pueden ser utilizados por el programa principal sin 4 Ing. Juan Carlos Tinoco Paniagua
  5. 5. TURBO PASCALnecesidad de reescribir el código que contienen. Para la utilización de estos"subprogramas" es necesaria su declaración.La palabra reservada USES cumple el propósito de declarar las unidades en el formatosiguiente: USES crt, dos;Esta línea declara y habilita para su uso a la unidad crt y a la unidad dosCada unidad que se declara deberá estar separada de la siguiente por una coma. Alfinal de todas las unidades declaradas se deberá colocar un punto y coma ";". Declaración de constantes y variablesPara declarar las constantes se utiliza la palabra reservada CONST seguida de unidentificador al que se le dará un valor determinado, un signo de igual "=", el valor querecibirá el identificador y al final un punto y coma ";". Ejemplo: CONST pi = 3.1415926;De esta forma el identificador pi recibirá el valor de 3.1415926 y no será posiblecambiarlo en el transcurso del programa.Es posible declarar varias constantes sucesivamente, puede ser una por renglón ovarias en un solo renglón. Cuando se hace ésto, la palabra CONST solo se pone una solavez como cabecera y a continuación todas las constantes por definir. Ejemplo: CONST PI = 3.1415926; Nombre = Juan Gutiérrez; Unidad = 1;Otra forma de escribir lo mismo es así: CONST PI = 3.1415926; Nombre = Juan Gutiérrez; Unidad = 1;Pero por cuestiones de legibilidad es preferible la primera opción.La declaración de variables se lleva a cabo de la misma forma, solo que en lugar de lapalabra CONS utilizamos la palabra VAR, y en lugar de "= valor;", utilizamos : tipo ,sustituyendo "tipo" por alguna clase válida de datos en Turbo Pascal. Ejemplo: VAR Num_entero : Integer; Nombre : String; 5 Ing. Juan Carlos Tinoco Paniagua
  6. 6. TURBO PASCAL Programa principalDespues de haber realizado todas las declaraciones se puede iniciar con el programaprincipal. (Es posible, antes del programa, declarar las funciones y procedimientos,pero eso se analizará posteriormente).El programa principal inicia con la palabra reservada BEGIN y termina con lapalabra END., esta última con un punto al final.Cada línea de código, enunciado, sentencia o instrucción completa que se escribadeberá terminar con un punto y coma ";".Solo se omitirá el punto y coma cuando se utiliza la palabra reservada ELSE. Aunquepuede también omitirse si la siguiente expresión es END o UNTIL. Salida de datos a la pantallaLas instrucciones que permiten mostrar datos en la pantalla de la computadorason: Write y WriteLn. Aunque ya se hizo uso de ellas en los pequeños programasanteriores de ejemplo, aqui se describirán a fondo.La sintaxis de los procedimientos es la siguiente: Write (indentificadores); WriteLn (indentificadores);Donde los identificadores son aquellos que contienen la información que sedesea mandar a la pantalla. Es posible utilizar varios de ellos por cadainstrucción Write o WriteLn, unicamente se separan unos de otros por comas",". Ejemplo: Write (Nombre, ApellidoP, ApellidoM);Esta linea de código desplegará consecutivamente los contenidos de losidentificadores Nombre, ApellidoP y ApellidoM. En caso de que la variable Nombrealmacenara el valor Rodrigo , la variable ApellidoP González y la variable ApellidoMGarcía, el resultado en pantalla sería: Rodrigo González GarcíaPodemos obtener el mismo resultado si utilizamos la siguiente estructura: Write (Nombre); Write (ApellidoP); Write (ApellidoM); 6 Ing. Juan Carlos Tinoco Paniagua
  7. 7. TURBO PASCALSi en lugar de utilizar la instrucción Write hacemos uso de WriteLn con la mismasintaxis del ejemplo anterior: WriteLn (Nombre); WriteLn (ApellidoP); WriteLn (ApellidoM);lo que obtendríamos sería: Rodrigo González GarcíaDe este ejemplo es posible concluir que la diferencia entre las instrucciones Write yWriteLn es que esta última imprime el contenido de los identificadores y cambia elcursor al siguiente renglón de la pantalla, y la primera solo escribe el contenido y dejael cursor al final del dato escrito. Entrada de datos desde tecladoLas instrucciones estandar de Turbo Pascal para obtener datos desde el tecladoson Read y ReadLn. La sintaxis de estas instrucciones es muy parecida a la de Write yWriteLn: Read (Identificador);El identificador puede ser cualquier variable definida previamente, NO puede ser unaconstante. Puede ser también un conjunto de variables, separadas entre comas, eneste caso se guardara el primer valor dado antes del [Enter] en el primer identificadorproporcionado, luego el segundo y así sucesivamente hasta el último identificador.La diferencia en el uso de la instrucción Read con respecto a ReadLn es que en laprimera, si se le dan mas datos de los que se introducirán se guardan en un buffer y seusarán en la siguiente instrucción Read o ReadLn del programa, en cambio ReadLnignora todo dato posterior a los que esten definidos en la instrucción.En caso de que se le indique a Read o ReadLn que lea un tipo específico de valor, y sele proporcione otro diferente se generará un error y se detendrá la ejecución delprograma. 7 Ing. Juan Carlos Tinoco Paniagua
  8. 8. TURBO PASCALYa conociendo la estructura es posible escribir un primer programa:PROGRAM Primera_Prueba;VAREntero : Integer;CONSTMensaje = Introduce un valor entero: ;Respuesta = El valor es: ;BEGINWrite(Mensaje);{Escribe en pantalla el mensaje definido como constante}ReadLn(Entero);{Lee un valor de teclado y lo almacena en la variable Entero}WriteLn(Respuesta, Entero);{Escribe en pantalla el contenido de Respuesta y el valor que se ingresó deteclado}END.Como podrá apreciarse, no es importante el orden en el que se declaran las variables yconstantes (aplicable solo al Turbo Pascal), es decir, pueden declararse primero lasvariables y luego las constantes y viceversa:PROGRAM Primera_Prueba;CONSTMensaje = Introduce un valor entero: ;Respuesta = El valor es: ;VAREntero : Integer;BEGINWrite(Mensaje);{Escribe en pantalla el mensaje definido como constante}ReadLn(Entero);{Lee un valor de teclado y lo almacena en la variable Entero}WriteLn(Respuesta, Entero);{Escribe en pantalla el contenido de Respuesta y el valor que se ingresó deteclado}END. 8 Ing. Juan Carlos Tinoco Paniagua
  9. 9. TURBO PASCAL Ciclos FOREl ciclo FOR repite una sentencia un determinado número de veces que se indicaal momento de llamar al ciclo.Lo que hace FOR es que incrementa una variable en uno desde un valor inicialhasta un valor final ejecutando en cada incremento la sentencia que se quiererepetir. Su sintaxis es:FOR identificador := inicio TO fin DO instrucción;Donde el identificador es la variable que se incrementará, inicio es el primer valorque tendrá dicha variable y fin es el valor hasta el cual se incrementará la misma;instrucción es la sentencia (sencilla o compuesta) que se ejecutará en cadaincremento de la variable.El siguiente ejemplo escribe los números del 1 al 50 en pantalla. La variableutilizada es "Numero". PROGRAM Ciclo_FOR; VAR Numero : Integer; BEGIN FOR Numero := 1 to 50 DO WriteLn(Numero); END.Una de las limitaciones de los ciclos FOR es que una vez iniciado el ciclo seejecutará el número de veces predefinido sin posibilidad de agregar o eliminarciclos.Es posible hacer que un ciclo cuente hacia atrás, es decir que la variable en lugarde incrementarse se decremente. Para ésto cambiamos la palabra TO porDOWNTO, y colocamos el valor mayor a la izquierda y el menor a la derecha.Ejemplo: PROGRAM Ciclo_FOR_2; VAR Numero : Integer; BEGIN FOR Numero := 50 DOWNTO 1 DO WriteLn(Numero); END. 9 Ing. Juan Carlos Tinoco Paniagua
  10. 10. TURBO PASCAL Compilación y ejecución en memoriaLa compilación de un programa es el paso mediante el cual traducimos dichoprograma al lenguaje maquina entendible por la computadora.Para lograr la compilación en el entorno integrado de desarrollo de Turbo Pascal seutiliza la opción Compile del menú del mismo nombre. Para accesar al menú se utilizala secuencia de teclas: [ALT] + [C], y luego se escoge la opción Compile.Otra forma de realizar la compilación es con la secuencia de teclas: [ALT] + [F9].Es posible compilarlo y ejecutarlo automáticamente utilizando la secuencia:[CONTROL] + [F9] Compilación al discoPara poder ejecutar un programa sin necesidad de llamar al entorno integrado dedesarrollo de Turbo Pascal es necesario compilar el programa al disco.Para hacer esto es necesario activar la opción Destination a Disk, esto se haceentrando al menú Compile, se selecciona la opción Destination y se presiona [Enter],de esta forma se cambia el destino de compilación de memoria a disco o viceversa(Dependiendo de la opción seleccionada actualmente).Una vez compilado un programa en el disco es posible ejecutarlo directamente desdeel sistema operativo. Asignación o igualaciónLa operación de asignación es una de las más utilizadas en Turbo Pascal ya que nospermite darle un valor determinado a las variables que declaramos en el programa olo que es lo mismo, igualarla a algún valor determinado.El símbolo utilizado para la operación es los dos puntos seguidos por un signo deigual := , a la izquierda de dicho símbolo se coloca el identificador al que se le asignaráun nuevo valor y a la derecha se colocará un identificador o algún valor directo que sealmacenará en el primer identificador. Ejemplo: Nombre := Juan Pérez; {Nombre guardará la cadena "Juan Pérez"} Resta := Numero1 - Numero2; {Resta gurdará el resultado de la resta de Numero2 a Numero1} Area := (Base*Altura)/2; {Obtiene el area de un triangulo y la guarda en el identificador Area}Es indispensable para todo programa que cuente con la capacidad de manejarentradas y salidas de información, ya que sin estas capacidades sería un programainútil. 10 Ing. Juan Carlos Tinoco Paniagua
  11. 11. TURBO PASCAL Salida de datos a la pantallaLas instrucciones que permiten mostrar datos en la pantalla de la computadorason: Write y WriteLn. Aunque ya se hizo uso de ellas en los pequeños programasanteriores de ejemplo, aquí se describirán a fondo.La sintaxis de los procedimientos es la siguiente: Write (indentificadores); WriteLn (indentificadores);Donde los identificadores son aquellos que contienen la información que se deseamandar a la pantalla. Es posible utilizar varios de ellos por cada instrucción Write oWriteLn, únicamente se separan unos de otros por comas ",". Ejemplo: Write (Nombre, ApellidoP, ApellidoM);Esta línea de código desplegará consecutivamente los contenidos de losidentificadores Nombre, ApellidoP y ApellidoM. En caso de que la variable Nombrealmacenara el valor Rodrigo , la variable ApellidoP González y la variable ApellidoMGarcía, el resultado en pantalla sería: Rodrigo González GarcíaPodemos obtener el mismo resultado si utilizamos la siguiente estructura: Write (Nombre); Write (ApellidoP); Write (ApellidoM);Si en lugar de utilizar la instrucción Write hacemos uso de WriteLn con la mismasintaxis del ejemplo anterior: WriteLn (Nombre); WriteLn (ApellidoP); WriteLn (ApellidoM);Lo que obtendríamos sería: Rodrigo González GarcíaDe este ejemplo es posible concluir que la diferencia entre las instrucciones Write yWriteLn es que esta última imprime el contenido de los identificadores y cambia el 11 Ing. Juan Carlos Tinoco Paniagua
  12. 12. TURBO PASCALcursor al siguiente renglón de la pantalla, y la primera solo escribe el contenido y dejael cursor al final del dato escrito. Entrada de datos desde tecladoLas instrucciones estándar de Turbo Pascal para obtener datos desde el tecladoson Read y ReadLn. La sintaxis de estas instrucciones es muy parecida a la de Write yWriteLn: Read (Identificador);El identificador puede ser cualquier variable definida previamente, NO puede ser unaconstante. Puede ser también un conjunto de variables, separadas entre comas, eneste caso se guardara el primer valor dado antes del [Enter] en el primer identificadorproporcionado, luego el segundo y así sucesivamente hasta el último identificador.La diferencia en el uso de la instrucción Read con respecto a ReadLn es que en laprimera, si se le dan más datos de los que se introducirán se guardan en un buffer y seusarán en la siguiente instrucción Read o ReadLn del programa, en cambio ReadLnignora todo dato posterior a los que estén definidos en la instrucción.En caso de que se le indique a Read o ReadLn que lea un tipo específico de valor, y sele proporcione otro diferente se generará un error y se detendrá la ejecución delprograma.Tipos de datosUn programa debe ser capaz de manejar diferente tipo de datos, como pueden sernúmeros enteros, reales, caracteres, cadenas de caracteres, etc. Para lograr el manejode toda esta información Turbo Pascal provee diferentes tipos de datos para losidentificadores que se utilizarán. Algunos de los más importantes se citan en seguida: Tipos enterosEn esta categoría Turbo Pascal cuenta con 5 tipos diferentes, cada uno abarca unrango específico de valores y utilizan una diferente cantidad de memoria dependiendode ese rango. Naturalmente el trabajar con rangos menores nos ofrece una mayorvelocidad y menor espacio en memoria, pero si se utilizan enteros largos se cuentacon mayor precisión. Los tipos de enteros en Turbo Pascal son: Tipo Rango de valores que acepta Integer -32,768 a 32,767 Word 0 a 65535 ShortInt -128 a 127 Byte 0 a 255 12 Ing. Juan Carlos Tinoco Paniagua
  13. 13. TURBO PASCAL LongInt -2,147,483,648 a 2,147,483,648Al utilizar los tipos enteros es posible representar en el programa un número enformato hexadecimal, para hacer esto solo se le antepone el símbolo "$" al valorhexadecimal, al momento de visualizar dicho valor, o utilizarlo en alguna operaciónserá como decimal. Por ejemplo: Cantidad := $10;El valor que se guarda en "Cantidad" es 16. Tipos realesLos números reales son aquellos que cuentan con una parte decimal. En Turbo Pascalcontamos con varios tipos de datos reales, pero no se puede utilizar, más que eltipo real, en máquinas que no cuenten con un coprocesador matemático. Los tipos dedatos reales son: Tipo Rango de valores que acepta Real 2.9E-39 a 1.7E38 Single 1.5E-45 a 3.4E38 Double 5.0E-324 a 1.7E308 Extended 1.9E-4851 a 1.1E4932 Comp -9.2E18 a 9.2E18Los números reales deben llevar por fuerza al menos un dígito de cada lado del puntodecimal así sea éste un cero. Como ejemplo, el número 5 debe representarsecomo: 5.0, el .5 como 0.5 , etc.En este tipo de datos se utiliza la notación científica, que es igual a la de lascalculadoras, el dígito que se encuentra a continuación de la E representa la potencia ala que se elevará el número 10 para multiplicarlo por la cantidad a la izquierda dedicha E: 3.0E5 = 3.0 * 10^5 = 3.0 * 100000 = 300000 1.5E-4 = 1.5 * 10^-4 = 1.5 * 0.0001 = 0.00015 Tipos caracterLos caracteres son cada uno de los símbolos que forman el código ASCII, el tipoestándar de Pascal para estos datos es Char. Los caracteres se especifican entreapostrofes: a B 2 # 13 Ing. Juan Carlos Tinoco Paniagua
  14. 14. TURBO PASCALEl tipo Char es un tipo ordinal de Pascal, esto quiere decir que sus elementos válidossiguen una secuencia ordenada de valores individuales. La secuencia de caracterespara este tipo corresponde al número del código ASCII, del 0 al 255.Es posible accesar a cada uno de los caracteres utilizando un signo # antes de su valorcorrespondiente, por ejemplo, la letra A puede ser representada como #65, el retornode carro, o enter, se representa como#13, y así cualquier caracter. Tipo cadenaLas cadenas son secuencias de caracteres o arreglos que tienen una longitud máximade 255 caracteres. Se definen entre apostrofes. El tipo de Pascal para las cadenases String. PROGRAM Cadena; VAR Nombre : String; BEGIN Nombre := Ernesto Chávez; WriteLn (Nombre); END.Este programa guarda la cadena Ernesto Chávez en la variable definida como tipostring, y la visualiza en la pantalla por medio de la instrucción WriteLn.El tamaño por defecto para un tipo string es de 255 caracteres, pero es posible definiruno más pequeño utilizando el siguiente formato: Variable : String[Tamaño];Donde Variable es la variable a definir y Tamaño es el número máximo de caracteresque podrá contener esa variable (naturalmente mayor a 0 y menor a 256).Es posible acceder a un solo caracter de una cadena utilizando inmediatamentedespués del nombre de la misma la posición del caracter encerrada entre corchetes.Por ejemplo: PROGRAM Cadena01; VAR Nombre : String[30]; {Permite un máximo de 30 caracteres en la variable} BEGIN 14 Ing. Juan Carlos Tinoco Paniagua
  15. 15. TURBO PASCAL Nombre := Ernesto Chávez; WriteLn (Nombre[5]); {Visualiza el 5to caracter de la cadena} END. Tipos lógicosEste tipo de datos tienen la peculiaridad de que solo pueden tomar dos tipos de datos:verdadero o falso, el verdadero puede ser representado por su nombre eninglés: True y el falso por False; también se representan por 1 ypor 0 respectivamente.El tipo está definido como Boolean.Los datos lógicos tienen una enorme aplicación en la evaluación de ciertos procesos,así como en el control de flujo de los programas. 15 Ing. Juan Carlos Tinoco Paniagua

×