Introducción a Turbo Pascal

24,360 views

Published on

Material de Apoyo para ser utilizado en la asignatura Computación I del área de Ingeniería de la Universidad Nacional Abierta, Centro Local Cojedes

Published in: Technology

Introducción a Turbo Pascal

  1. 1. ING. ZAMANTHA GONZÁLEZ UNA. CL COJEDES
  2. 2. Introducción  Desarrollado por Niklaus Wirth (finales 60s)  Basado en ARGOL60  Diseñado para aprendizaje de la programación  Lenguaje de alto nivel  Inicio de la programación estructurada  Potente y flexible, muy extendido  Base para muchos lenguajes modernos
  3. 3. Entornos de Programación  Múltiples compiladores y versiones  Entornos de pago:  Turbo Pascal, Microsoft Pascal…  Entornos gratuitos:  FreePascal, GNU Pascal, SURPas…  Pocas diferencias de uno a otro  Más extendido: Turbo Pascal (Borland)
  4. 4. Turbo Pascal Versión 7.0  Actualmente versión liberada (distribuida de forma gratuita) por parte de Borland  Diseñada para Microsoft DOS  Totalmente compatible con Windows
  5. 5. Turbo Pascal Versión 7.0  Menú FILE  Menú EDIT  Abir, guardar, imprimir,  Copiar, cortar, pegar, salir, cambiar directorio, deshacer, rehacer, borrar, consola de MSDOS mostrar portapapeles
  6. 6. Turbo Pascal Versión 7.0  Menú SEARCH  Menú RUN  Buscar, remplazar, ir a  Ejecutar, paso a paso, línea, buscar errores, ejecutar hasta, reiniciar buscar procedimientos… programa, introducir parámetro
  7. 7. Turbo Pascal Versión 7.0  Menú COMPILE  Menú DEBUG  Compilar, crear ejecutable,  Puntos de parada, mostrar recompilar archivo, el procedimiento que mostrar información, elegir llama, abrir pantallas de partes externas información
  8. 8. Turbo Pascal Versión 7.0  Menú TOOLS  Menú OPTIONS  Mostrar mensajes, ir a  Permite modificar muchas otras partes del origen, funciones y componentes ejecutar Grep (opcional) de varias partes del compilador
  9. 9. Turbo Pascal Versión 7.0  Menú WINDOWS  Menú HELP  Ordenar ventanas,  Muestra la ayuda e cerrarlas, pasar de unas a información general sobre otras… el compilador y el lenguaje
  10. 10. EJERCICIO Nº 1 PLANTEAMIENTO DEL PROBLEMA: calcular la resistencia combinada en ohmios cuando tres resistencias están conectadas en paralelo. La fórmula de la resistencia combinada es: 1 1/Resistencia1 + 1/Resistencia2 + 1/Resistencia3 comenzamos por identificar todos los elementos que están ANALISIS involucrados en el problema planteado y entender en qué consiste la solución del mismo. Por ejemplo, llamaremos RC a la resistencia combinada, R1, R2 y R3 a las resistencias 1, 2 y 3 respectivamente observamos que la solución del problema consiste en resolver la fórmula dada ahora podemos responder las preguntas planteadas a continuación.
  11. 11. ANALISIS ¿qué necesitamos ¿cómo obtener lo que ¿qué nos piden? para obtener lo que nos piden? nos piden? ENTRADA PROCESO SALIDA R1 1 R2 RC = RC 1/R1 + 1/R2 + 1/R3 R3 ESPECIFICACIÓN FUNCIONAL
  12. 12. DISEÑO comienzo 1. COMIENZO (resistencia) entrada entrada 2. LEER (R1, R2, R3) 1 proceso proceso 3. RC 1/R1+1/R2+1/R3 salida salida 4. ESCRIBIR (RC) fin 5. FIN (resistencia) algoritmo escrito
  13. 13. CODIFICACIÓN Program resistencia; Uses 1. COMIENZO (resistencia) comienzo crt; Var R1,R2,R3,RC: real; Begin ClrScr; entrada Writeln(‘introduzca los valores de R1,R2 y R3’); 2. LEER (R1, R2, R3) Readln(R1,R2,R3); 1 3. RC proceso RC:= 1/(1/R1+1/R2+1/R3); 1/R1+1/R2+1/R3 4. ESCRIBIR (RC) salida Writeln(‘resistencia combinada:’,RC:6:3); 5. FIN (resistencia) fin End. Codificación en Turbo Pascal
  14. 14. EDICIÓN una vez realizada la codificación debemos introducir el programa fuente al computador mediante el editor del Turbo Pascal y almacenarlo bajo un nombre, en este caso: resistencia FILE EDIT SEARCH RUN COMPILE DEBUG TOOLS OPTIONS WINDOW HELP SAVE RESISTENCIA Program resistencia; Uses crt; Var R1,R2,R3,RC:real; Begin ClrScr; writeln (‘introduzca los valores de R1,R2,R3’); readln (R1,R2,R3); RC : = 1/(1/R1+1/R2+1/R3); writeln (‘resistencia combinada= ‘,RC:6:3); End.
  15. 15. COMPILACIÓN Una vez almacenado el programa en la memoria del computador procedemos a compilarlo; es decir, a verificar los posibles errores de sintaxis que pueda tener mediante el comando COMPILE COMPILE CORREGIR ¿hay errores SI de sintaxis? NO EJECUTAR
  16. 16. EJECUCIÓN Corregidos los errores de sintaxis el programa puede ejecutarse mediante el comando RUN obteniéndose como salida los resultados del mismo, siempre que no existan errores de ejecución (por ejemplo: divisiones por cero) RUN Introduzca los valores de R1,R2 ,R3 20 25 30 Resistencia combinada= 8.065 En Turbo Pascal se puede compilar y ejecutar un programa utilizando solamente el comando RUN
  17. 17. VERIFICACIÓN Y DEPURACIÓN Ahora debemos interpretar los resultados obtenidos y volver a ejecutar el programa con una amplia variedad de datos para detectar posibles errores de lógica; es decir, errores en el diseño de su algoritmo. De presentarse errores de lógica en la prueba del programa debemos encontrar la causa de los mismos y corregirlos DEPURAR ¿hay SI errores? NO DOCUMENTAR Y MANTENER
  18. 18. Uso de Sentencias Básicas  Los programas en Pascal se dividen en 3 partes: cabecera, sección de declaraciones y código de programa.  Cada subprograma adicional ha de contener también estas 3 partes.  Obligatorio uso de “ ; ” al acabar cada instrucción
  19. 19. Estructura de un Programa Program identificador_programa; Var {comentario} {Declaración de Uses Variables} x : integer; CRT; begin Const {Cuerpo principal} {declaración de end. constantes} nombre_constante = valor; type {Declaración de Variables tipo} Procedure / function {Declaración de Procedimientos y funciones}
  20. 20. Estructura de un Programa  Cabecera:  Nombrar el programa  Palabra clave: program
  21. 21. Estructura de un Programa  Sección de declaraciones:  Definición de variables, constantes y tipos de datos personalizados.  Palabras clave: var, const, type
  22. 22. Estructura de un Programa  Código de programa:  Todo el código a ejecutar  Palabras clave: begin y end.
  23. 23. Identificadores  Son los nombres de los objetos (variables, constantes, etc…) que se usan en un programa.  Un identificador está formado por letras y dígitos y underscore , empezando siempre con una letra.  No se distingue entre mayúsculas y minúsculas.  Las palabras reservadas del lenguaje no pueden usarse como identificadores.  Todos los identificadores deben ser declarados antes de usarlos.
  24. 24. Palabras reservadas AND ARRAY BEGIN CASE CONST DIV DO DOWNTO Pascal Estandar y ELSE END FILE FOR Turbo Pascal 6.0 FORWARD FUNCTION GOTO IF IN LABEL MOD NIL NOT OF OR PACKED PROCEDURE PROGRAM RECORD REPEAT SET THEN TO TYPE UNTIL VAR WHILE WITH ABSOLUTE ASM DESTRUCTOR Turbo Pascal IMPLEMENTATION INTERFACE OBJECT 7.0 PRIVATE SHR UNIT VIRTUAL CONSTRUCTOR EXTERNAL INLINE INTERRUPT SHL STRING USES XOR
  25. 25. Variables  Las variables deben ser declaradas en la sección de declaraciones del programa. var nombre_de_variable: TIPO de DATO; Var dia : integer; pago : real; letra : char; exito : boolean; a, b, c: integer; 2algo: integer; {no es válido) a#123:real; {no es válido)
  26. 26. Constantes  A diferencia de las variables, las constantes no pueden cambiar su valor durante la ejecución del programa.  La declaración de una constante empieza con la palabra reservada CONST Const nombre_constante = valor;  Ej : Const pi = 3.14; max = 20;
  27. 27. Tipos de Datos Simples  Números Enteros:  Integer (-32768;32767) utiliza 2 bytes  Byte (0;255)  ShorInt (-128;127)  LongInt (-2147483648; 2147483647)  Word (0;65535)
  28. 28. Tipos de Datos Simples  Números Reales:  Real (2.9e-39;1.7e38) utiliza 6 bytes  Single(1.5E-45 a 3.4E38) utiliza 8 bytes  Double (5.0E-324 a 1.7E308) utiliza 4 bytes Los números reales deben llevar por fuerza al menos un dígito de cada lado del punto decimal, así sea éste un cero. Ejemplo, el número 5 debe representarse como: 5.0, el .5 como 0.5
  29. 29. Tipos de Datos Simples  Caracteres y alfanuméricos:  Boolean (TRUE; FALSE), utiliza 1 bit  Char utiliza 1 byte; alfanumérico. Los caracteres se especifican entre apóstrofes. Ej. „a‟; „z‟  String longitud máxima 255 caracteres, pero es posible definir uno mas pequeño utilizando el siguiente formato: Variable : String[Tamaño]; Ej.: Var Nombre: String[30];
  30. 30. Tipos de Datos Ejemplo: Program prueba; var i:integer; x:real; letra:char; Opcion:Boolean; palabra:String; begin i:=0; x:=2.85; letra:=‟z‟; Encontrado:=TRUE; palabra:=‟zanahoria‟; end.
  31. 31. Operadores  Aritméticos: ( , ),+, -, *, /. div : división entera. mod: resto.  Prioridad: 1. ( ) 2. *, /, div , mod 3. + -  Si existe más de un operador perteneciente a un mismo nivel, la prioridad va de izquierda a derecha.
  32. 32. Operadores  Relacionales: =: comparación <>: distinto <, >, <=, >=.  Lógicos: and , not, or  Asignación: :=
  33. 33. Operadores Nivel 1 not Nivel 2 / * div mod and Nivel 3 + - or Nivel 4 < > = <= >= <> ATENCION: Si existe más de un operador perteneciente a un mismo nivel, la prioridad va de izquierda a derecha.
  34. 34. Operadores  EJEMPLO 4 + 2 * 25 DIV 10 - SQRT(9) 4 + 50 DIV 10 - SQRT(9) 4 + 5 - SQRT(9) 9 - SQRT(9) 9-3 6
  35. 35. Operadores  EJEMPLO 4 + 2 * 25 DIV 10 - SQRT(9) 4 + 50 DIV 10 - SQRT(9) 4 + 5 - SQRT(9) 9 - SQRT(9) 9-3 6
  36. 36. Entradas de Datos  read(lista de variables); Se leen las variables con espacios en blanco entre ellas, dejando el cursor en la misma línea.  readln(lista de variables); Se leen las variables con espacios en blanco entre ellas, dejando el cursor en la siguiente línea.
  37. 37. Salida de Datos  write(lista de variables); Se escriben las variables sin espacios en blanco entre ellas, dejando el cursor en la misma línea.  writeln(lista de variables); Se escriben las variables sin espacios en blanco entre ellas, dejando el cursor en la siguiente línea.
  38. 38. Ejemplos En caso de que la variable Nombre almacenara el valor 'Rodrigo ', la variable ApellidoP 'González ' y la variable ApellidoM 'García„. Write (Nombre); Write (ApellidoP); Write (ApellidoM); Rodrigo González García WriteLn (Nombre); WriteLn (ApellidoP); WriteLn (ApellidoM); Rodrigo González García

×