Tareas de prueba para el autocontrol. Laboratorios de Ciencias de la Computación, Examen Estatal Unificado 1, el desarrollador del lenguaje Pascal es

Vivimos en la era de la tecnología informática, gracias a la cual aparecen a nuestro alrededor multitud de definiciones, términos y conceptos relacionados con este entorno.

Muchas personas nacidas entre los 60 y 70 años tienen dificultades para comprender estos términos, ya que el progreso tecnológico se produjo de repente y a la velocidad del rayo y nadie tuvo tiempo de seguir su desarrollo.

En consecuencia, conceptos tan básicos como programación y lenguaje de programación son conocidos sólo por unos pocos. Entonces, comencemos por descubrir algunas definiciones básicas.

¿Qué es la programación?

Programación– creación de programas informáticos específicos que realizan diversas funciones en el entorno del software informático. Por eso, programador- una persona que crea este tipo de programa.

Pero habiendo estudiado sólo una definición, es imposible entender en qué se basa el desarrollo de programas y cómo utilizarlos, por lo que surge la siguiente pregunta: qué es un "lenguaje de programación".

Lenguaje de programación- un sistema de signos y reglas, similar al lenguaje moderno, con cuya ayuda se crean los programas. El lenguaje es la base de toda la esencia de la programación, porque sin él nada funcionaría. Se sabe con certeza que desde la creación de la primera computadora se han desarrollado más de 8.000 mil caracteres.
Existen diferentes tipos de programación y, en consecuencia, diferentes tipos de lenguajes.

En particular, me gustaría llamar la atención sobre el lenguaje de programación. "Pascal".

Pascal fue desarrollado por un científico suizo. Niklaus Wirth en 1871, y lleva el nombre del gran matemático y filósofo francés del siglo XVII. Blaise Pascal, quien a su vez inventó el primer dispositivo sumador, algo que recuerda lejanamente a nuestra calculadora moderna.

Pascal se desarrolló como un lenguaje de programación estructurado educativo, que todavía se utiliza para enseñar programación en escuelas y universidades.

Posteriormente, el idioma comenzó a expandirse y aparecieron nuevas versiones. La extensión más famosa fue el paquete. "Turbo-Pascal", que fue desarrollado en 1983. Está diseñado para el sistema operativo CP/M.

Ganó una enorme popularidad gracias a su transferencia al entorno MS-DOS. A día de hoy se están desarrollando varias ampliaciones. Por ejemplo, ya se lanzó la versión 7 del paquete de extensión Turbo Pascal.

Aquí hay algunas notas de la historia del lenguaje de programación Pascal. Después de leer este artículo, aprenderá en qué etapas tuvo lugar la historia de la lengua Pascal.

El nombre mismo del idioma, "Pascal", surgió en honor a uno de los grandes matemáticos y físicos franceses, Blaise Pascal (1623-1662). Un poco de la historia de vida del pensador francés. Blaise Pascal nació en la familia del famoso matemático Etienne Pascal.

Un rasgo distintivo de todos sus familiares es su extraordinario talento. Tenía dos hermanas: la hermana mayor, Gilberte, tenía habilidades matemáticas y talento literario más desarrollados, y la hermana menor, Jacqueline, tenía un don artístico. Blaise Pascal pasó su infancia en París y nunca asistió a la escuela.

El único maestro que Pascal reconoció fue su padre Etienne. A los cuatro años, Blaise ya sabía leer y escribir, comenzó a interesarse por la geometría euclidiana y a los 15 ya podía discutir los problemas matemáticos más complejos con los entonces famosos científicos parisinos. El joven Pascal se convirtió en un brillante matemático.

Uno de los inventos famosos de Blaise Pascal fue el aritmómetro (rueda de Pascal), que realizaba todas las operaciones aritméticas. Era una caja de latón con un mecanismo interesante (foto abajo).

Esta máquina de sumar glorificó a Blaise Pascal en todos los países occidentales. Multitudes de personas del viejo mundo se dirigieron al Palacio de Luxemburgo (París) para ver este dispositivo único en aquella época.

Continúa, y en los años 50 del siglo XX aparecen los primeros lenguajes de programación de alto nivel: FORTRAN, COBOL y ALGOL. FORTRAN y COBOL existen hasta el día de hoy, pero ALGOL se convirtió en el fundador Lenguaje de programación Pascal.

La primera versión de ALGOL apareció en 1958, desarrollada por el creador de FORTRAN, John Backus. Las versiones posteriores del lenguaje ALGOL fueron ALGOL-60 y ALGOL-68. Sin embargo, debido a la naturaleza engorrosa de los lenguajes ALGOL-60 y ALGOL-68, se crearon grandes dificultades.

Por ello, en 1965, la Federación Internacional para el Procesamiento de la Información propuso el proyecto a varios especialistas en informática. Era necesario crear un nuevo lenguaje de programación, el sucesor de ALGOL-60.

En este proyecto participó el futuro creador del lenguaje de programación Pascal, Nicholas Wirth, un científico suizo, en ese momento profesor asistente en la Facultad de Ciencias de la Computación de la Universidad de Stanford.

Nicholas Wirth comenzó a desarrollar el proyecto ALGOL-W. El objetivo del proyecto era enseñar a los estudiantes varios métodos: “programación estructurada”, “programación de arriba hacia abajo”, etc. En 1970 ocurrieron dos grandes acontecimientos:

  1. aparición del sistema operativo UNIX
  2. la aparición de un nuevo lenguaje de programación.

Nicholas Wirth nombró al nuevo lenguaje de programación en honor al matemático francés del siglo XVII Blaise Pascal, porque Pascal creó un dispositivo informático (la rueda de Pascal). La primera versión del nuevo lenguaje de programación se lanzó en la computadora CDC 6000.

Éxito del lenguaje Pascal:

El destacado éxito del lenguaje Pascal se debe a varias razones:

  1. El lenguaje reflejó de forma natural los conceptos modernos más importantes en la tecnología de desarrollo de software.
  2. Precisamente gracias a su compacidad, integridad y ortogonalidad de conceptos, el lenguaje de programación Pascal resultó muy fácil de aprender y dominar.
  3. A pesar de la aparente simplicidad del lenguaje, resultó adecuado para una gama bastante amplia de aplicaciones, para el desarrollo de programas muy grandes y complejos, incluso sistemas operativos.
  4. Pascal es muy avanzado tecnológicamente para implementar casi todas las texturas de máquinas (incluidas las no tradicionales). Hay una comparación interesante: desarrollar un traductor de Pascal casi no requiere más trabajo que una buena tesis para un graduado universitario.

Entonces, has visto cómo se desarrolló la historia de la lengua Pascal. ¿Estás interesado en el artículo? Debido a su simplicidad y ausencia de complejidad, los conceptos básicos del lenguaje de programación Pascal pueden ser comprendidos tanto por estudiantes de instituciones de educación superior como por escolares comunes. Programar en Pascal es una actividad divertida. ¡Programa y disfruta!

El período de los años 60 no trajo más lenguajes de programación utilizados hoy en día, pero tan pronto como pasó al período de los años 70, se desarrolló inmediatamente Pascal en 1970, el mismo que todavía se estudia hoy en la escuela de informática. plan de estudios y que explica la programación de la consola.

El lenguaje Pascal fue creado por Niklaus Wirth en 1968-1969 después de su participación en el trabajo del comité para desarrollar el estándar de lenguaje ALGOL-68. El idioma lleva el nombre del matemático, físico, escritor y filósofo francés Blaise Pascal, quien creó la primera máquina mecánica del mundo que sumaba dos números. La primera publicación de Wirth sobre el lenguaje data de 1970, presentando el lenguaje, el autor declaró como objetivo de su creación: construir un lenguaje pequeño y eficiente que promueva un buen estilo de programación utilizando programación estructurada y datos estructurados. El trabajo posterior de Wirth tuvo como objetivo crear un lenguaje de programación de sistemas basado en Pascal, manteniendo al mismo tiempo la capacidad de llevar a cabo un curso sistemático y holístico de programación profesional sobre esta base. El resultado de este trabajo es el lenguaje Modula-2. Las características del lenguaje son la tipificación estricta y la presencia de herramientas de programación estructural (procedimental). Pascal fue uno de los primeros idiomas de este tipo. Según Wirth, el lenguaje debería contribuir a la programación disciplinada, por lo que, junto con una mecanografía estricta, Pascal minimiza las posibles ambigüedades sintácticas, y el autor intentó hacer que la sintaxis en sí fuera intuitiva incluso cuando se familiarizó por primera vez con el lenguaje.

Sin embargo, inicialmente el lenguaje tenía una serie de limitaciones: la incapacidad de pasar matrices de longitud variable a funciones, la falta de medios normales para trabajar con memoria dinámica, una biblioteca de entrada y salida limitada, la falta de herramientas para conectar funciones escritas en otros lenguajes, la falta de herramientas de compilación separadas, etc. Brian Kernighan llevó a cabo un análisis detallado de las deficiencias del lenguaje Pascal en ese momento en el artículo "Por qué Pascal no es mi lenguaje de programación favorito" (este artículo fue publicado en principios de la década de 1980, cuando ya existía la lengua Modula-2, descendiente de Pascal, libre de la mayoría de sus vicios, así como dialectos más desarrollados de Pascal). Algunas de las deficiencias de Pascal se corrigieron en el estándar ISO de 1982, en particular, aparecieron en el lenguaje matrices abiertas, lo que permitió utilizar los mismos procedimientos para procesar matrices unidimensionales de varios tamaños. Sin embargo, muchas desventajas del lenguaje no aparecen o incluso se convierten en ventajas a la hora de aprender a programar. Además, en comparación con el lenguaje de programación académico dominante de la década de 1970 (que era Fortran, que tenía deficiencias mucho más importantes), Pascal representó un importante paso adelante. En la década de 1980, Pascal se convirtió en la base de numerosos programas educativos; en algunos casos, se crearon lenguajes de programación educativos especializados sobre esta base, por ejemplo, a principios de la década de 1980 en la URSS, Andrei Ershov desarrolló un lenguaje similar a Pascal; enseñar a los escolares los conceptos básicos de la informática y la informática "lenguaje algorítmico educativo".

La implementación más famosa de Pascal, que aseguró el uso y desarrollo generalizado del lenguaje, es Turbo Pascal de Borland, que luego creció hasta convertirse en el objeto Pascal para DOS (comenzando con la versión 5.5) y Windows y luego en Delphi, en el que se implementaron importantes extensiones de se introdujo el idioma.

Los dialectos Pascal utilizados en Turbo Pascal para DOS y Delphi para Windows se hicieron populares debido a la falta de otras implementaciones comerciales exitosas.

Historia de la creación del lenguaje Pascal En 1965, se anunció un concurso para crear un nuevo lenguaje de programación, el sucesor del lenguaje ALGOL-60. En el concurso participó el científico suizo de origen polaco, Niklaus Wirth, que trabajaba como profesor asistente en el Departamento de Ciencias de la Computación de la Universidad de Stanford. El proyecto que propuso fue rechazado por la comisión en 1967. Pero Wirth no dejó de trabajar en la creación de un nuevo lenguaje. Al regresar a Suiza, junto con empleados del Instituto Federal Suizo de Tecnología en Zurich, desarrolló la primera versión del lenguaje Pascal en 1968. El idioma lleva el nombre del gran matemático y mecánico francés Blaise Pascal, quien creó la primera máquina calculadora en 1648. En 1971, N. Wirth publicó una descripción de su lenguaje y en 1975 se desarrolló un manual para usuarios de Pascal.

Pascal ABC: el sistema está diseñado para enseñar programación en Pascal y está dirigido a escolares y estudiantes de primer año. Este sistema está diseñado para realizar la transición de los programas más simples a la programación modular, orientada a objetos, basada en eventos y por componentes. Muchos conceptos en Pascal ABC están simplificados, lo que permite utilizarlos en una fase más temprana del proceso de aprendizaje. El módulo de gráficos no requiere objetos, aunque sus capacidades son casi idénticas a las capacidades gráficas de Borland Delphi.

Estructura del programa Encabezado NOMBRE del programa; Sección de descripciones de etiquetas; constante; tipo; var; procedimiento, función; Bloque de operadores principales inicio sección de operadores finales.

El primer programa en Pascal en el entorno Turbo Programa Ejemplo_1; Var a, b, rez: entero; Comenzar a escribir('Ingrese dos números separados por un espacio'); Leer (a, b); rez: = a*b; Writeln('Su producto =', rez); Fin.

El peatón caminaba por un terreno accidentado. Su velocidad en la llanura es de v 1 km/h, cuesta arriba - v 2 km/h y cuesta abajo - v 3 km/h. El tiempo de viaje es t 1, t 2 y t 3 horas, respectivamente. ¿Qué distancia recorrió el peatón? 1. Introduzca v 1, v 2, v 3, t 1, t 2, t 3. 2. S 1: = v 1 * t 1. 3. S 2: = v 2 * t 2. 4. S 3: = v 3 * t 3. 5. S: = S 1 + S 2 + S 3. 6. Imprime el valor de S. 7. Fin. Tarea Escribir un programa en lenguaje Turbo. Pascal.

TIPOS DE ENTEROS tipo rango de valores Entero corto Entero Entero largo -128. . 127-32768. . 32767-2147483648. . 2147483647 memoria requerida 1 byte 2 bytes 4 bytes Byte Palabra 0. . 255 0. . 65535 1 byte 2 bytes

TIPOS VÁLIDOS Tipo Rango de valores Número de dígitos de mantisa Memoria requerida (bytes) Real 2. 9 e-39. . 1. 7e+38 1. 5e-45. . 3. 4 e+38 11 6 7 4 Sencillo Doble 5. 0 e-324. . 15 1. 7 e+308 Ampliado 3. 4 e-4932. . 19 1. 1 e+4932 8 10

Operaciones utilizadas para trabajar con variables enteras Operación signo Propósito Prioridad + Suma 2 - Resta 2 * Multiplicación 1 Parte entera de la división Resto de la división 1 div mod 1

Ejemplos 15 div 3 = 5; 15 mod 3 = 0; 18 divisiones 5 = 3; 18 módulo 5 = 3; 123 div 10 = 12, 123 mod 10 = 3, 7 div 10 = 0, 7 mod 10 = 7.

Ejemplo: Dado un número natural n de tres cifras, cuya notación no contiene ceros. Crea un algoritmo para sumar dígitos de un número de tres dígitos. 1. Ingrese el número n 2. C: = n mod 10 (lugar de las unidades) 3. A: = n div 100 (lugar de las centenas) 4. B: = n div 10 mod 10 (lugar de las decenas) 5. S: = A +B +C 6. Salida S 7. Finalizar tarea: Escribir un programa en Turbo Pascal.

Al escribir expresiones algebraicas, utilice operaciones aritméticas (suma, multiplicación, resta, división), funciones Pascal y paréntesis. El procedimiento para calcular el valor de una expresión es: 1) se calculan los valores entre paréntesis; 2) se calculan los valores de la función; 3) se realizan operaciones unarias (menos unario - cambio de signo); 4) se realizan operaciones de multiplicación y división (incluida la división de números enteros y encontrar el resto de la división); 5) se realizan operaciones de suma y resta.

Funciones matemáticas incorporadas del lenguaje Pascal Notación matemática Notación Pascal Propósito cos x cos(x) Coseno x sin x sin(x) Seno x ex exp(x) Valor de e elevado a x [x] trunc(x) Parte entera de x |x | abs(x) Módulo de un número x sqrt(x) Raíz cuadrada de x (x) frac(x) Parte fraccionaria de un número x arctan x arctan(x) Arctanken de un número x ln x ln(x) Logaritmo natural x p Número Pi PI x 2 sqr (x) Cuadrado del número x

No hay exponenciación (excepto la elevación al cuadrado y la exponenciación de e). Para elevar un número a una potencia arbitraria, puedes usar la igualdad obvia: xy=e y ln x Para elevar un número a una potencia natural, puedes escribir tu propia función. Por ejemplo, z=xy, donde x, y son naturales, hazlo así: Z: = Round(Exp(Y * Ln(X))).

Cálculo por fórmula Ejemplos de escritura de expresiones matemáticas: Notación matemática 2 x – 7 x + 6 Escritura en Pascal Sqr(x) - 7 * x + 6 (Abs(x) - Abs(y)) / (1 + Abs(x * y) )) Ln(Abs((y - Sqrt(Abs(x))) * (x - y / (z + Sqr(x) / 4))))

Tarea. Calcular el valor de la expresión del programa; Var X, Z: Real; Begin Write("Ingrese los valores de la variable X: "); Leer. Ln(X); Z: = 6 * ln(sqrt(exp(x+1)+2*exp(x)*cos(x))) / ln(x - exp(x+3) * sin(x)) + abs(cos (x) / exp(sin(x))); Escribir. Ln("Valor de la expresión: ", Z: 12: 6); Fin.

La ramificación es una forma de organización de acciones en la que, dependiendo del cumplimiento de alguna condición, se realiza una u otra secuencia de acciones.

Operador de sucursal en versión completa SI (condición) ENTONCES (operadores) ELSE (operadores); condición - escrita usando signos de comparación y toma dos valores: sí o no SI A>B ENTONCES máx: =A ELSE máx: =B; Las condiciones complejas se componen de condiciones simples que utilizan operaciones lógicas (O, Y, NO) SI (A>B)Y(A>C) ENTONCES máx: =A ELSE máx: =100;

Src="http://present5.com/presentation/223935287_384486868/image-22.jpg" alt="Operador de ramificación en versión incompleta IF (condición) ENTONCES (operadores); IF B >A ENTONCES máx:"> Оператор ветвления в неполном варианте IF (условие) THEN (операторы); IF B >A THEN max: =В;!}

Problema 2. Dado un número real a. Calcule f(a) si Programe Us 1; Varx, F: Real; Comience a escribir. Ln("Ingrese un número real: "); Leer. Ln(x); SI x

Tarea 3. Escribe una expresión lógica que tome el valor VERDADERO si el punto se encuentra dentro del área sombreada; en caso contrario, FALSO. En primer lugar, prestemos atención al hecho de que es aconsejable dividir esta figura compleja en varias más simples: un triángulo que se encuentra en los cuartos de coordenadas I y IV y un triángulo que se encuentra en los cuartos de coordenadas II y III. Así, el punto puede caer dentro de una de estas figuras, o en la recta que las limita. Para que un punto caiga dentro de la región, cada una de las relaciones debe ser verdadera, por lo que se realiza la operación AND sobre ellas. Dado que todo el área se dividió en varios, se utiliza la operación OR entre las relaciones que describen cada uno de ellos. Teniendo en cuenta las consideraciones aquí dadas y anotando las ecuaciones de todas las rectas que limitan la figura, obtenemos la expresión lógica deseada: (X >= 0) Y (Y >= 1,5 * X – 1) Y (Y = – 1,5 * X – 1) Y (Y

TRABAJO INDEPENDIENTE Escriba un programa que ingrese las coordenadas de un punto (x, y) y determine si el punto cae dentro del área sombreada de la figura. Un impacto en el límite del área se considera un impacto en el área.

Problema 1. Dados los números reales x, y. Si xey son negativos, reemplace cada valor con un módulo; si solo uno de ellos es negativo, entonces aumente ambos valores en 0,5; si ambos valores no son negativos y ninguno pertenece al segmento, entonces reduzca ambos valores 10 veces; en otros casos, deje xey sin cambios. Desarrollaremos un algoritmo para resolver el problema y luego escribiremos un programa. Escribamos el algoritmo verbalmente: 1) ingrese los valores x, y; 2) si x

Programa Usl; Var X, Y: Real; Comenzar a escribir("Ingrese dos números reales"); Leer. Ln(X,Y); Si (X = 0, 5) Y (X = 0, 5) Y (Y

OPERADOR DE SELECCIÓN Además del operador condicional, el operador de selección CASE se utiliza con bastante frecuencia como estructura de control. Esta estructura le permite saltar a una de las ramas dependiendo del valor de una expresión determinada. El operador seleccionado le permite reemplazar varios operadores de horquillas. Grabación de un enunciado de selección CASO K DE A 1: serie 1; A 2: episodio 2; . . . AN: serie N ELSE serie N + 1 FINAL;

Problema 1. El antiguo calendario japonés adoptó un ciclo de doce años. Los años dentro del ciclo recibieron nombres de animales: rata, vaca, tigre, liebre, dragón, serpiente, caballo, oveja, mono, gallo, perro y cerdo. Escriba un programa que le permita ingresar un número de año e imprima su nombre según el antiguo calendario japonés. Referencia: 1996 es el año de la rata, el comienzo del próximo ciclo. Como el ciclo tiene doce años, pongamos el nombre del año en correspondencia con el resto de dividir el número de este año por 12. Programa Goroskop; Var Año: Entero; Comenzar a escribir("Ingrese el año"); Leer. Ln(Año); CASO Año MOD 12 DE 0: Escribir. Ln("Año del Mono"); 1: Escribe. Ln("Año del Gallo"); 2: Escribe. Ln("Año del Perro"); 3: Escribe. Ln("Año del Cerdo"); 4: Escribe. Ln("Año de la Rata"); 5: Escribe. Ln("Año de la Vaca"); 6: Escribe. Ln("Año del Tigre"); 7: Escribe. Ln("Año de la Liebre"); 8: Escribe. Ln("Año del Dragón"); 9: Escribe. Ln("Año de la Serpiente"); 10: Escribe. Ln("Año del Caballo"); 11: Escribe. Ln("Año de la Oveja") FINAL; FIN.

TRABAJO INDEPENDIENTE 1) Escriba un programa que le permita mostrar el nombre del día según el número ingresado del día de la semana. 2) Para dos números enteros, debes determinar si su suma es un número par o no. Para verificar la paridad, usamos la condición: el resto de la división por 2 de un número par es 0. D/Z Cree un programa que, según el número de mes ingresado, muestre el nombre de la temporada.

Tarea 2. Cree un programa que, según el número ingresado del día de la semana, muestre su nombre en la pantalla. Días del programa; Var día: entero; Comenzar a escribir('Ingrese el día de la semana'); Readln(día); Día del caso 1: writeln('Lunes'); 2: writeln('Martes'); 3: writeln('Miércoles'); 4: writeln('Jueves'); 5: escrito('Viernes'); 6: writeln('Sábado'); 7: writeln('Domingo') else writeln('No existe tal día'); fin.

Ejemplo. Cree un programa que, según el número de mes ingresado, muestre el nombre de la temporada. Programa m; Var k: byte; Comenzar a escribir('Ingrese el número del mes'); Readln(k); Caso k de 1, 2, 12: writeln('Invierno'); 3, 4, 5: writeln('Primavera'); 6, 7, 8: writeln('Verano'); 9, 10, 11: writeln('Otoño') else writeln('No existe tal mes'); fin.

Preguntas de prueba 1) ¿Qué estructura de control Pascal se debe utilizar si la expresión que se está probando puede tomar varios valores posibles y en cada caso es necesario realizar diferentes acciones? 2) ¿En qué se diferencia un algoritmo lineal de un algoritmo de ramificación? 3) ¿Qué palabras clave se utilizan en Pascal para organizar las ramificaciones? 4) ¿En qué se diferencia la ramificación completa de la ramificación incompleta? 5) ¿Cómo formatear el texto del programa para que quede más claro? 6) ¿Qué se debe utilizar si, si se cumple una determinada condición, es necesario ejecutar varias declaraciones? 7) ¿En qué caso el número de declaraciones iniciales en un programa no debería corresponder al número de declaraciones finales?

Entre los muchos lenguajes de programación diseñados para enseñar habilidades de programación, hay uno que destaca en particular. El lenguaje Pascal, que lleva el nombre del científico francés del siglo XVII Blaise Pascal, se desarrolló a finales de los años 1960. científico suizo Niklaus Wirth, y lejos de tener fines educativos, como se percibe ahora este lenguaje.

Por el contrario, en aquellos días los científicos probaron diferentes lenguajes de programación para aplicaciones prácticas. Y más tarde, este científico creó dos lenguajes de programación más: Oberon y Modula, que, sin embargo, no se generalizaron entre los especialistas. Para ser precisos, en 1968 se creó la primera versión del lenguaje Pascal (basado en ALGOL) y en 1970 se creó el primer compilador.

Una característica especial de Pascal es su orientación estructural: cualquier programa aquí puede describirse como una combinación de elementos estructurales individuales, o bloques, en un todo único. Esta es la llamada programación estructurada, que reemplazó a la programación lineal, la organización más simple de escribir programas, cuando los comandos se escriben en el procesador uno tras otro, sin ninguna estructura.

La idea de la programación estructurada resultó ser relevante en ese momento y muy fructífera, ya que no para todas las tareas es posible escribir un programa especificando una secuencia de comandos simples, sin separar estos últimos en bloques separados. De hecho, sólo si existe una determinada estructura de programa se puede juzgar un algoritmo eficaz para resolver un problema.

Esto quedó especialmente claro después de que, alrededor de 1970, el profesor Hoar publicara dos artículos: "La base axiomática de la programación para computadoras" y "Sobre la organización estructural de los datos", en los que se intenta comprender la exactitud de la composición de los algoritmos de los programas. desde un punto de vista matemático. El lenguaje de programación Pascal es el primer lenguaje que cuenta con todas las herramientas necesarias para probar la efectividad de los programas escritos.

Otra característica distintiva de Pascal es su estricta tipificación de datos, entre los cuales surgió un nuevo tipo no utilizado anteriormente: el enumerado. El fuerte factor de mecanografía le ha dado a Pascal la reputación de ser un lenguaje disciplinado que enseña al programador a pensar lógicamente.

En Pascal, se permite que el código del programa no esté relacionado (a diferencia de los lenguajes COBOL y FORTRAN de esa época), es decir, se permite una cantidad arbitrariamente grande de líneas vacías, lo cual es conveniente para formatear al escribir comentarios. Puede escribir un programa en Pascal en una sola línea; seguirá funcionando si está escrito de acuerdo con las reglas.

Pero con la difusión de este lenguaje de programación, resultó que le faltaban muchos elementos que nos son familiares: la exponenciación, el concepto de variable local, matrices dinámicas, la capacidad de utilizar el lenguaje de máquina, etc. La expresión más famosa de esta deficiencia de Esa vez es el artículo de Kernighan "Por qué Pascal no es mi lenguaje de programación favorito".

Una de las razones de tal descontento con Pascal en ese momento fue la imposibilidad de escribir un programa compuesto de varias partes, ya que simplemente no existían mecanismos para ello. Pero Niklaus Wirth y sus colegas en versiones posteriores de Pascal eliminaron todas estas deficiencias, siguiendo todos los principios de programación.




Arriba