09.05.2013 Views

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

7.3. Aspectos metodológicos 143<br />

Leer n<br />

Construir la tabla n<br />

A continuación se muestra el primer refinami<strong>en</strong>to, <strong>en</strong> el que se especifica<br />

la función que construye la tabla como la aplicación sucesiva de la acción que<br />

construye cada una de las filas de la tabla:<br />

Leer n<br />

{Construir la tabla:}<br />

para i←1 hasta n hacer<br />

Escribir la línea i-ésima<br />

El paso sigui<strong>en</strong>te consiste <strong>en</strong> depurar la especificación de la función que construye<br />

las filas.<br />

Leer n<br />

para i←1 hasta n hacer<br />

{Escribir la línea i-ésima:}<br />

para j←1 hasta n hacer<br />

Escribir i*j<br />

Salto de línea<br />

Y esta versión admite una traducción directa a <strong>Pascal</strong> como la sigui<strong>en</strong>te:<br />

Program Tabla (input, output);<br />

var<br />

n, i, j: integer;<br />

begin<br />

{Petición de datos:}<br />

Write(’Escriba el valor de n y pulse intro: ’);<br />

ReadLn(n);<br />

{Construcción de la tabla:}<br />

for i:= 1 to n do begin<br />

{Escribir la línea i-ésima:}<br />

for j:= 1 to n do<br />

Write(i * j:6); {Elem<strong>en</strong>to i-j-ésimo}<br />

WriteLn {Salto de línea}<br />

<strong>en</strong>d {for i:= 1}<br />

<strong>en</strong>d. {Tabla}<br />

Es de resaltar que la idea del refinami<strong>en</strong>to progresivo consiste simplem<strong>en</strong>te<br />

<strong>en</strong> caminar desde el seudocódigo hasta, por ejemplo, el <strong>Pascal</strong>; por esta razón,<br />

durante el refinami<strong>en</strong>to se puede escribir directam<strong>en</strong>te <strong>en</strong> <strong>Pascal</strong> lo que se traduce<br />

trivialm<strong>en</strong>te, por ejemplo, escribir a:= b <strong>en</strong> lugar de a←b. En el sigui<strong>en</strong>te<br />

ejemplo utilizaremos esta observación.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!