
Fallo al compilar sentencia IF-THEN-ELSE
Publicado por Elias (1 intervención) el 08/12/2013 17:42:43
Buenas tardes, he estado intentando hacer un pequeño programilla, en el cual introduces una cadena de texto (cadena:string) y te saca por pantalla las palabras por las cuales está formada y su longitud. El problema viene en la sintaxis de la sentencia IF-THEN-ELSE. Estoy haciendo algo mal y no se el que... Os pongo el código del programlla a ver si me podeis echar una mano. Os agradecería mucho vuestra ayuda, un saludo.
Gracias.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
program ejercicio28 (input,output);
TYPE
Tcadena=string(100);
VAR
cadena:Tcadena;
(*****************************************************************************)
PROCEDURE lengthcadena (cadena:Tcadena);
VAR
i:integer;
espacio,punto,coma:integer;
subcadena:string(100);
begin
FOR i:=1 TO 100 DO
begin
espacio:=index(cadena,' ');
punto:=index(cadena,'.');
coma:=index(cadena,',');
IF (espacio < punto) AND (espacio < coma) THEN
begin
subcadena:=substr(cadena,1,espacio-1);
cadena:=substr(cadena,espacio);
writeln(subcadena,' - ',length(subcadena);
end
ELSE IF (punto < espacio) AND (punto < coma) THEN
begin
subcadena:=substr(cadena,1,punto-1);
cadena:=substr(cadena,punto);
writeln(subcadena,' - ',length(subcadena);
end
ELSE IF (coma < espacio) AND (coma < punto) THEN
begin
subcadena:=substr(cadena,1,coma-1);
cadena:=substr(cadena,coma);
writeln(subcadena,' - ',length(subcadena);
end;
end;
end;
(*****************************************************************************)
begin
writeln('Introduzca una frase de como máximo 100 caracteres: ');
writeln;
readln(cadena);
lengthcadena(cadena);
readln;
end.
Gracias.
Valora esta pregunta


0