SENTENCIA REPETITIVA

Transcripción

SENTENCIA REPETITIVA
LAB_31
SENTENCIA FOR – DO
3.1
REPRESENTACIÓN GRÁFICA
A= VI --- VF
A
3.2
SINTAXIS GENERAL.
La sintaxis de un ciclo ascendente o descendente FOR es:
FOR Nombre := Val. Inicial
TO
DOWNTO
Val. Final DO
Begin
Sentencia 1;
Sentencia 2;
:
Sentencia n;
End;
3.3
EJEMPLOS DE CODIFICACIÓN
EJEMPLO 1. Codificado de una sentencia repetitiva simple.
CODIFICADO
F = 1--10
B = 5*A
B
F
FOR F:= 1 TO 10 DO
Begin
B:= 5*A;
WriteLn (B);
End;
EJEMPLO 2. Codificación de un diagrama que presenta sentencias repetitivas anidadas.
CODIFICADO
F = 10--1
C = 1--10
FOR F := 10 DOWNTO 1 DO
Begin
FOR C := 1 TO 10 DO
Begin
A := F*C;
WriteLn (F,’ * ‘,C,’=’,A);
End ;
End;
A = F*C
F,'*',C,=,A
C
F
LAB_31
PROGRAM LAB_31;
USES
CRT;
TYPE
MATRIZ=ARRAY[1..10,1..10] OF REAL;
VECTOR=ARRAY[1..10] OF REAL;
VAR
N,F,C,D
: Integer;
A,B
: Matriz;
BEGIN
CLRSCR;
WriteLn('
Universidad Técnica de Oruro');
WriteLn('
Facultad Nacional de Ingeniería');
WriteLn('
Departamento de Matemáticas');
WriteLn;
WriteLn('
DIAGRAMA No 31');
WriteLn('
-----------------------');
WriteLn('
Orden de la matriz ? ');
WriteLn;
WriteLn('
MATRIZ PROBLEMA');
GotoXy(45,7);ReadLn(N);
FOR F:=1 TO N DO
BEGIN
FOR C:=1 TO 2*N DO
BEGIN
IF C>N THEN BEGIN
IF C=N+F THEN BEGIN
A[F,C]:=1;
END
ELSE BEGIN
A[F,C]:=0;
END;
END
ELSE BEGIN
GOTOXY(C*8,F+10);READLN(A[F,C]);
END;
END;
END;
FOR D:=1 TO N DO
BEGIN
FOR F:=1 TO N DO
BEGIN
IF F=D THEN BEGIN
FOR C:=1 TO 2*N DO
BEGIN
B[F,C]:=A[F,C];
END;
END
ELSE BEGIN
FOR C:=D TO 2*N DO
BEGIN
B[F,C]:=-A[F,D]*A[D,C]/A[D,D]+A[F,C];
END;
END;
END;
A:=B;
END;
CLRSCR;
WriteLn('
Universidad Técnica de Oruro');
WriteLn('
Facultad Nacional de Ingeniería');
WriteLn('
Departamento de Matemáticas');
WriteLn;
WriteLn('
DIAGRAMA No 31');
WriteLn;
WriteLn('
INVERSA DE LA MATRIZ');
WriteLn('
-------------------------');
WRITELN;
FOR F:=1 TO N DO
BEGIN
FOR C:=N+1 TO 2*N DO
BEGIN
WRITE(A[F,C]/A[F,F]:8:3);
END;
WRITELN;
END;
GOTOXY(3,24);WRITE('Presione ENTER para terminar');READLN;
END.

Documentos relacionados