SlideShare una empresa de Scribd logo
ING. ZAMANTHA GONZÁLEZ   UNA. CL COJEDES
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
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)
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
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
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
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
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
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
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.
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
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
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
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.
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
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
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
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
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}
Estructura de un Programa
 Cabecera:
    Nombrar el programa
        Palabra clave: program
Estructura de un Programa
 Sección      de declaraciones:
     Definición de variables, constantes y
     tipos de datos personalizados.
        Palabras clave: var, const, type
Estructura de un Programa
 Código      de programa:
    Todo el código a ejecutar
        Palabras clave: begin y end.
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.
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
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)
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;
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)
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
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];
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.
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.
Operadores

   Relacionales:
     =:
       comparación
     <>: distinto
     <, >, <=, >=.
   Lógicos:
    and , not, or
   Asignación:
    :=
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.
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
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
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.
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.
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

Más contenido relacionado

PDF
Regresion por mínimos cuadrados
PPTX
Distribucion geometrica
PPTX
Estructuras de seleccion
PPTX
espacios vectoriales
PPTX
Tipos de datos, identificadores, variables y constantes
PDF
Modelo entidad relacion
PPTX
ALGORITMOS EN PSEUDOCODIGO
Regresion por mínimos cuadrados
Distribucion geometrica
Estructuras de seleccion
espacios vectoriales
Tipos de datos, identificadores, variables y constantes
Modelo entidad relacion
ALGORITMOS EN PSEUDOCODIGO

La actualidad más candente (20)

PPT
Operaciones entre lenguajes
PDF
02 Ejercicios Resueltos diagramas de flujo
DOCX
APLICACION DE LA INTEGRAL DEFINIDA EN AREAS Y VOLUMENES
PPT
Espacios vectoriales
PDF
Modulo de estadistica ii
PPT
Lenguaje natural pseudocodigo diagramacion y programacion
PPS
Estructura selectiva multiple
PDF
Estructuras de Datos (Arreglos)
PPTX
Sintaxis de los algoritmos estructurados
PPTX
Programación Orientada a Objetos - constructores y destructores
PDF
Ejercicios de programación en C (Estructuras condicionales-Selectivas)
PPTX
4.1 definición del espacio vectorial y sus propiedades
PPT
Ejercicios
DOCX
Matrices y conclusiones
PPTX
Principios electricos y aplicaciones digitalesl sesion 1
PPTX
JDBC(conjunto de clases e interfaces)
PPTX
Distribuciones de variables aleatorias discretas y continuas
PPTX
SUMAS DE RIEMANN
PPT
Cálculo Diferencial
PDF
Integrales de superficie
Operaciones entre lenguajes
02 Ejercicios Resueltos diagramas de flujo
APLICACION DE LA INTEGRAL DEFINIDA EN AREAS Y VOLUMENES
Espacios vectoriales
Modulo de estadistica ii
Lenguaje natural pseudocodigo diagramacion y programacion
Estructura selectiva multiple
Estructuras de Datos (Arreglos)
Sintaxis de los algoritmos estructurados
Programación Orientada a Objetos - constructores y destructores
Ejercicios de programación en C (Estructuras condicionales-Selectivas)
4.1 definición del espacio vectorial y sus propiedades
Ejercicios
Matrices y conclusiones
Principios electricos y aplicaciones digitalesl sesion 1
JDBC(conjunto de clases e interfaces)
Distribuciones de variables aleatorias discretas y continuas
SUMAS DE RIEMANN
Cálculo Diferencial
Integrales de superficie
Publicidad

Destacado (20)

PDF
Cómo Elaborar el Trabajo Práctico
PDF
46769481 guia-de-investigacion-de-operaciones-i[1]
PPT
Problema del Transporte
PPT
PPT
Problema de Asignación
PDF
PPTX
Lenguaje de programación: Pascal
PPT
lenguaje pascal
PDF
Taller 327 blog 1
PPT
Pascal
PDF
Fortran y Pascal
PPTX
Estructura de datos
PDF
Plan de Curso 305
PPTX
Cobol
Cómo Elaborar el Trabajo Práctico
46769481 guia-de-investigacion-de-operaciones-i[1]
Problema del Transporte
Problema de Asignación
Lenguaje de programación: Pascal
lenguaje pascal
Taller 327 blog 1
Pascal
Fortran y Pascal
Estructura de datos
Plan de Curso 305
Cobol
Publicidad

Similar a Introducción a Turbo Pascal (20)

PDF
Grupo 6 turbopascal apesteguia (1)
PPTX
Programa pascal
DOCX
Turbo pascal 7 guia principal
PPTX
Programación en ‘‘c’’ ii
DOC
Manual Practico de Pascal
DOC
Manual De Pascal
DOC
Prueba programacion
DOCX
Algoritmos
PPSX
Presentacion1 lenguaje de-programacion_c
DOCX
Estructuras general de programas en pascal
DOCX
Turbo pascal
PDF
[Ebook] super manual de a lgoritmia
PDF
03.Programación en ensamblador
PDF
Abc algoritmos
PPTX
Programacion
PPTX
Programacion
PPTX
Programacion
Grupo 6 turbopascal apesteguia (1)
Programa pascal
Turbo pascal 7 guia principal
Programación en ‘‘c’’ ii
Manual Practico de Pascal
Manual De Pascal
Prueba programacion
Algoritmos
Presentacion1 lenguaje de-programacion_c
Estructuras general de programas en pascal
Turbo pascal
[Ebook] super manual de a lgoritmia
03.Programación en ensamblador
Abc algoritmos
Programacion
Programacion
Programacion

Más de Zamantha Gonzalez Universidad Nacional Abierta (20)

PPTX
PDF
Instructivo Autocorreccion Pruebas Objetivas UNA
PPTX
Aspectos básicos de google classroom
PPTX
Lineamientos curso de iniciación 2017 1
PPTX
Presentacion telemática educativa
PPTX
PPTX
Encuentro inicial estudiantes primer semestre
PPSX
Introduccion a la_programacion_(i_parte)
PDF
Pascal [modo de compatibilidad]

Último (20)

PPTX
Power Point Nicolás Carrasco (disertación Roblox).pptx
PPTX
Propuesta BKP servidores con Acronis1.pptx
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PDF
Calidad desde el Docente y la mejora continua .pdf
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PDF
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
PPTX
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
PPTX
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
PPT
El-Gobierno-Electrónico-En-El-Estado-Bolivia
PDF
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
PPT
Que son las redes de computadores y sus partes
PPTX
Presentación de Redes de Datos modelo osi
PPT
introduccion a las_web en el 2025_mejoras.ppt
PDF
Influencia-del-uso-de-redes-sociales.pdf
PDF
Estrategia de apoyo tecnología miguel angel solis
PDF
Estrategia de apoyo tecnología grado 9-3
PPTX
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
PPTX
Presentación PASANTIAS AuditorioOO..pptx
Power Point Nicolás Carrasco (disertación Roblox).pptx
Propuesta BKP servidores con Acronis1.pptx
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
Calidad desde el Docente y la mejora continua .pdf
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
El-Gobierno-Electrónico-En-El-Estado-Bolivia
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
Que son las redes de computadores y sus partes
Presentación de Redes de Datos modelo osi
introduccion a las_web en el 2025_mejoras.ppt
Influencia-del-uso-de-redes-sociales.pdf
Estrategia de apoyo tecnología miguel angel solis
Estrategia de apoyo tecnología grado 9-3
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
Presentación PASANTIAS AuditorioOO..pptx

Introducción a Turbo Pascal

  • 1. ING. ZAMANTHA GONZÁLEZ UNA. CL COJEDES
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. Estructura de un Programa  Cabecera:  Nombrar el programa  Palabra clave: program
  • 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. Estructura de un Programa  Código de programa:  Todo el código a ejecutar  Palabras clave: begin y end.
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. Operadores  Relacionales: =: comparación <>: distinto <, >, <=, >=.  Lógicos: and , not, or  Asignación: :=
  • 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. 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. 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. 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. 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. 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