PDF de programación - Pascal

Imágen de pdf Pascal

Pascalgráfica de visualizaciones

Publicado el 22 de Abril del 2021
422 visualizaciones desde el 22 de Abril del 2021
2,6 MB
183 paginas
Creado hace 16a (31/12/2007)
Pascal

Capitulo 1

Introducción

Comenzaremos por dar algunas definiciones básicas que nos ayudarán a
comprender el alcance de este trabajo.

Problema – Situación planteada que queremos resolver.
Algoritmo – Secuencia finita de acciones con las que podemos resolver el
problema.

Según el Teorema de la Programación Estructurada todo problema computacional
puede resolverse mediante la aplicación de tres tipos de acciones fundamentales
que llamaremos "Estructuras de Control de Flujo de Datos".

Estas acciones son las siguientes:



Ejecutar una acción, luego otra, luego otra,... (lo llamamos acción
simple)

 Decidir entre ejecutar una u otra acción en función de que se cumpla o no



una determinada condición (lo llamamos acción condicional)
Ejecutar repetidas veces la misma acción mientras se cumpla una
determinada condición (lo llamamos acción iterativa).

Estructuras de Control de Flujo de Datos

Acción Simple

Esta es la más básica de las estructuras. Se considera acción simple a las
acciones de leer (por teclado o desde un archivo), escribir (por pantalla,
impresora o en un archivo) y asignar. Graficamente lo representamos de la
siguiente manera:

Lectura (o entrada) – Leemos (por teclado) un valor y lo almacenamos en la
variable a.

Asignación – Asignamos el valor de la variable a a la variable b.

Escritura (o salida) – Mostramos (por pantalla o impresora) la frase “Hola Mundo”
seguida del valor que contenga la variable b.

Variables y Tipos de Datos

Una variable representa un espacio de memoria (RAM) en el cual podemos
almacenar temporalmente valores.

Podemos tener valores numéricos, alfanuméricos, lógicos y definidos por el
programador. Es decir: valores de diferentes tipos (de datos).

Si hablamos del valor 123 estamos hablando de un valor numérico entero.
Podemos decir entonces que 123 es un entero. En cambio, si hablamos del valor
12.3 estamos hablando de un valor numérico real.

También podemos hablar del valor “Hola Mundo”. En este caso estamos hablando
de un valor alfanumérico. Decimos que este valor es una cadena de caracteres o
simplemente una cadena.

Otro valor alfanumérico podría ser "123 Hola Mundo 456" que contiene
caracteres letras y números. Es alfanumérico.

Obviamente no es lo mismo el valor “123” que 123. El primero es un valor
alfanumérico (está encerrado entre comillas) mientras que el segundo es un
entero.

Otro tipo de datos es el dato lógico o booleano. Los datos booleanos solo pueden
contener valores lógicos: verdadero o falso (true o false).

Resumiendo lo anterior diremos que podemos tener variables de diferentes tipos
de datos. Los tipos de datos pueden ser numéricos, alfanuméricos, booleanos o
definidos por el programador (pero esto lo veremos más adelante).

Las variables se identifican con un nombre (o identificador). El nombre de la
variable debe comenzar con una letra. No puede tener espacios ni caracteres
especiales.

Nombres válidos son:






fechaNac
fecNac
f
iFechaNac

Nombres incorrectos son:






fecha nacimiento // no puede haber un espacio
fecha-nacimiento // el caracter " - " se utiliza para restar
12fecha // debe comenzar con una letra
fecha+nacimiento // el caracter " + " se utiliza para sumar

Comenzando a Programar

Con lo estudiado hasta aquí estamos en condiciones de resolver el siguiente
problema.

Problema 1.0
Se requiere un programa que permita ingresar el nombre de una persona y que
luego escriba la leyenda “Hola Mundo” seguida del nombre ingresado.

Análisis
Primero emitimos un mensaje indicando al usuario que debe ingresar su nombre
(utilizamos la acción simple escritura). Para leer el nombre utilizamos la acción
simple de lectura. El usuario ingresa por teclado su nombre, lo leemos y lo
almacenamos en la variable nom. Luego utilizamos la acción simple de escritura
para mostrar la cadena “Hola Mundo” seguida del valor que contiene la variable
nom. Las letras C y F encerradas en un círculo indican donde comienza y donde
finaliza el programa.

Codificación del Algoritmo

El gráfico que acabamos de analizar representa el algoritmo que resuelve el
problema planteado.

Para que una computadora pueda interpretar y ejecutar este algoritmo debemos
codificarlo en algún lenguaje de programación. En este apunte utilizaremos el
lenguaje de programación Pascal.

Para programar en Pascal tenemos que escribir el código fuente (sentencias e
instrucciones que veremos a continuación) en un archivo de texto con extensión
.pas.

problema1.0.pas
1:
2:var nom:string[20];
3:begin
4: // escribe este mensaje por pantalla
5: write('Ingrese su nombre: ');
6:
7: // lee un valor y lo guarda en la variable nom

8: // (el usuario debe escribir su nombre por teclado)
9: readln(nom);
10:
11: // escribe (en pantalla) la cadena 'Hola Mundo'
12: // seguida del valor que contiene la variable nom
13: writeln('Hola Mundo ',nom);
14:end.
15:

El código comienza con la definición de la variable nom. Pascal es un leguaje
fuertemente tipado por lo que todos los recursos que vayamos a utilizar en el
programa (variables, funciones, etc) deben ser previamente especificados,
indicando explicitamente su tipo de datos. En el caso de la variable nom su tipo
de datos es string (alfanumérico, cadena de caracteres). En particular lo
definimos como string[20] (arbitrareamente) por lo tanto en la variable nom
podremos almacenar cadenas de a lo sumo 20 caracteres.

Luego, podemos ver que el programa está encerrado entre las palabras begin y
end. Se dice que begin-end encierran un bloque de código. Cada sentencia
termina con “punto y coma” salvo el end final que termina con “punto”.

Dentro del código podemos escribir comentarios para ayudarnos a comprender
mejor el programa. Los comentarios deben comenzar con “doble barra”.

No es una buena práctica utilizar caracteres especiales dentro de un archivo de
código. Es decir: no debemos usar acentos ni "eñes" en los comentarios ni en
ninguna parte del código fuente.

Nota: el código anterior es compatible con Free Pascal
(http://www.freepascal.org/). Difiere en algunos detalles con Borland Turbo
Pascal. En este apunte utilizaremos Free Pascal.

Para editar y compilar el programa vamos a necesitar utilizar una herramienta de
desarrollo: Una IDE ("Entorno Integrado de Desarrollo"). Utilizaremos EditPad PRO
+ FreePascal.

Acción Condicional o Estructura de Decisión

La estructura de decisión permite decidir entre ejecutar un conjunto de acciones
u otro en función una expresión lógica. Es decir: una expresión que tenga valor

de verdad.

Representamos la acción condicional de la siguiente manera:

Cuando el algoritmo (o programa) llega a una acción condicional debe evaluar la
expresión lógica (ubicada en la parte superior). Si esta tiene valor de verdad true
(verdadero) entonces se ejecutan las acciones que se encuentran en la parte
izquierda de la estructura. Si la expresión resulta false (falsa) entonces se
ejecutan las acciones ubicadas a la derecha.

Problema 1.1
Leer un valor e indicar si el valor ingresado es mayor que 10.

Análisis
Leemos el valor en la variable v. Luego con una acción condicional evaluamos si
el valor de v es mayor que 10. Si resulta verdadero (esto depende de lo que
ingrese el usuario) entonces se ejecuta la parte izquierda de la estructura y se
muestra un mensaje indicando que el valor ingresado es mayor que 10.

<!--[if !supportEmptyParas]--> <!--[endif]-->

Si la condición resulta falsa entonces podemos asegurar que el valor NO es mayor que
10. Pero no sabemos si es menor o igual. Esto lo estudiaremos en el próximo problema.

problema1.1.pas

1:
2:var v:integer;
3:begin
4: // leemos un valor por teclado
5: writeln('Ingrese un valor: ');
6: readln(v);
7:
8: // si v (el valor leido) es mayor que 10 entonces
9: if( v>10 ) then begin
10: writeln('El valor mayor que 10');
11: end else begin // si v no es mayor que 10...
12: writeln('El valor NO es mayor que 10');
13: end;
14:end.
15:

La acción condicional se codifica con la sentencia if (ver línea 9). Esta sentencia
evalúa la expresión lógica ubicada dentro de los paréntesis y decide (en función
de que resulte true o false) que bloque de código ejecutar. Si la expresión v>10
resulta verdadera entonces se ejecuta la línea 10, si no (else) se ejecuta la línea
12.

Notemos que tanto la línea 10 como la línea 12 están encerradas en bloques
begin-end. Por eso hablamos de "bloques de código". Dentro un bloque de código
puede haber más de una instrucción como veremos en los próximos ejemplos.

Problema 1.2
Idem anterior pero indicar si el valor ingresado es mayor, menor o igual que 10.

Análisis
Para resolver este problema leemos v y preguntamos si es mayor que 10. Si
resulta verdadero entonces podemos mostrar ese resultado. Si no es mayor
entonces puede ser igual o menor. Tenemos que preguntar por alguna de estas
posibilidades. Preguntamos si v=10. Si es verdadero entonces ya sabemos que se
ingresó el valor 10. Si es falso entonces (como no es mayor ni es igual) resulta
que v es menor que 10.

Utilizamos estructuras de desición anidadas (o "ifes" anidados).

problema1.2.pas
1:
2:var v:integer;
3:begin
4: write('Ingrese un valor: ');
5: readln(v);
6: if( v>10 ) then begin // es mayor
7: writeln('El valor mayor que 10');
8: end else begin // es igual
9: if( v=10 ) then begin
10: writeln('Es igual a 10');
11: end else begin // es menor
12: writeln('Es menor que 10');
13: end;
14: end;
15:end.
16:

En este problema vemos estructuras de desición anidadas (o "ifes anidados") pero
aún así los bloques de código encerrados en los if-else tienen una única acción. El
if de la línea 6 encierra una única acción writeln. Su else encierra una única

acción if que a su vez encierra una única acción, tanto por verdadero (
  • Links de descarga
http://lwp-l.com/pdf19124

Comentarios de: Pascal (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad