BEGIN Y END
Publicado por BEA (14 intervenciones) el 29/11/2005 16:22:45
Hola de nuevo!! Gracias por la ayuda aquí está el código de todo el programa:
PROGRAM PRAC01 (FTEXTO,OUTPUT);
VAR
FTEXTO:TEXT;
CONTARLINEA,CONTARPALAB,CONTARPALVOCAL,CONTARLINEAVOC,A,B:INTEGER;
CAR:CHAR;
FUNCTION ESALFABET (C:CHAR):BOOLEAN;
BEGIN
ESALFABET := (C>='A') AND (C<='Z') OR (C>='a') AND (C<='z');
END;
FUNCTION ESVOCAL (C:CHAR):BOOLEAN;
BEGIN
ESVOCAL:= (C='A') OR (C='E') OR (C='I') OR (C='O') OR (C='U') OR
(C='a') OR (C='e') OR (C='i') OR (C='o') OR (C='u')
END;
BEGIN (*PROGRAM PRINCIPAL*)
ASSIGN(FTEXTO,'H:\FTEXTO.txt');
RESET(FTEXTO);
CONTARLINEA:=0;
CONTARPALAB:=0;
CONTARPALVOCAL:=0;
CONTARLINEAVOC:=0;
WRITELN('S nchez Gonz lez Beatriz, N§ Matr¡cula: BC294');
WHILE NOT EOF(FTEXTO) DO
BEGIN (*1*)
WHILE NOT EOLN(FTEXTO) DO
BEGIN (* FINAL DE LINEA*)
READ(FTEXTO,CAR);
WHILE (CAR = ' ') DO (*CON ESTO SALTAMOS BLANCOS*)
READ(FTEXTO,CAR);
IF ESALFABET(CAR) THEN
BEGIN (*ES ALFABETICO*)
IF ESVOCAL(CAR) THEN
A:=1
ELSE
A:=0;
IF (A=1) AND NOT EOLN(FTEXTO) THEN
BEGIN
READ(FTEXTO,CAR);
IF ESVOCAL(CAR) THEN
B:=1
ELSE
B:=0
END;
WHILE (CAR <> ' ') AND NOT EOLN(FTEXTO) DO
READ(FTEXTO,CAR); (*SALTAMOS HASTA QUE HALLA OTRO ESPACIO*)
CONTARPALAB:= CONTARPALAB +1;
IF A AND B = 1 THEN
BEGIN
CONTARPALVOCAL:=CONTARPALAB;
END;
END (*ES ALFABETICO*)
ELSE AQUÍ ES DONDE TENGO K PONER LA SOLUCIÓN, SE TIENE QUE PARAR LA BÚSQUEDA Y DARME ESE ERROR.
BEGIN
WRITELN('DATOS DE ENTRADA INCORRECTOS');
CLOSE(FTEXTO)
END.
END; (*MIENTRAS NO SEA FINAL LINEA*)
IF EOLN(FTEXTO) THEN
BEGIN
CONTARLINEA := CONTARLINEA +1;
IF CONTARPALVOCAL<>0 THEN
BEGIN
CONTARLINEAVOC:=CONTARLINEA;
END;
READLN(FTEXTO)
END;
END; (*1*)
CLOSE(FTEXTO);
WRITELN('');
WRITELN('LINEA, PALABRA',' ',CONTARLINEA,CONTARPALAB);
IF CONTARPALVOCAL AND CONTARLINEAVOC = 0 THEN
WRITELN('PALABRA NO ENCONTRADA')
ELSE
BEGIN
WRITELN('');
WRITELN('LA ULTIMA PALABRA QUE EMPIEZA POR DOS VOCALES JUNTAS ES:');
WRITELN('PALABRA: ',' ',CONTARPALVOCAL);
WRITELN('LINEA: ',' ',CONTARLINEAVOC);
END;
END. (*PROGRAM PRINCIPAL*)
eSPERO K TENGA ALGUNA SOLUCIÓN PORQUE ME ESTOY DESKICIANDO, MI PROFESORA KREO K NO TIENE NI IDEA JE. Gracias. tengo k solucionarlo pronto porque la tengo k entregar dentro de poco. Gracias.
PROGRAM PRAC01 (FTEXTO,OUTPUT);
VAR
FTEXTO:TEXT;
CONTARLINEA,CONTARPALAB,CONTARPALVOCAL,CONTARLINEAVOC,A,B:INTEGER;
CAR:CHAR;
FUNCTION ESALFABET (C:CHAR):BOOLEAN;
BEGIN
ESALFABET := (C>='A') AND (C<='Z') OR (C>='a') AND (C<='z');
END;
FUNCTION ESVOCAL (C:CHAR):BOOLEAN;
BEGIN
ESVOCAL:= (C='A') OR (C='E') OR (C='I') OR (C='O') OR (C='U') OR
(C='a') OR (C='e') OR (C='i') OR (C='o') OR (C='u')
END;
BEGIN (*PROGRAM PRINCIPAL*)
ASSIGN(FTEXTO,'H:\FTEXTO.txt');
RESET(FTEXTO);
CONTARLINEA:=0;
CONTARPALAB:=0;
CONTARPALVOCAL:=0;
CONTARLINEAVOC:=0;
WRITELN('S nchez Gonz lez Beatriz, N§ Matr¡cula: BC294');
WHILE NOT EOF(FTEXTO) DO
BEGIN (*1*)
WHILE NOT EOLN(FTEXTO) DO
BEGIN (* FINAL DE LINEA*)
READ(FTEXTO,CAR);
WHILE (CAR = ' ') DO (*CON ESTO SALTAMOS BLANCOS*)
READ(FTEXTO,CAR);
IF ESALFABET(CAR) THEN
BEGIN (*ES ALFABETICO*)
IF ESVOCAL(CAR) THEN
A:=1
ELSE
A:=0;
IF (A=1) AND NOT EOLN(FTEXTO) THEN
BEGIN
READ(FTEXTO,CAR);
IF ESVOCAL(CAR) THEN
B:=1
ELSE
B:=0
END;
WHILE (CAR <> ' ') AND NOT EOLN(FTEXTO) DO
READ(FTEXTO,CAR); (*SALTAMOS HASTA QUE HALLA OTRO ESPACIO*)
CONTARPALAB:= CONTARPALAB +1;
IF A AND B = 1 THEN
BEGIN
CONTARPALVOCAL:=CONTARPALAB;
END;
END (*ES ALFABETICO*)
ELSE AQUÍ ES DONDE TENGO K PONER LA SOLUCIÓN, SE TIENE QUE PARAR LA BÚSQUEDA Y DARME ESE ERROR.
BEGIN
WRITELN('DATOS DE ENTRADA INCORRECTOS');
CLOSE(FTEXTO)
END.
END; (*MIENTRAS NO SEA FINAL LINEA*)
IF EOLN(FTEXTO) THEN
BEGIN
CONTARLINEA := CONTARLINEA +1;
IF CONTARPALVOCAL<>0 THEN
BEGIN
CONTARLINEAVOC:=CONTARLINEA;
END;
READLN(FTEXTO)
END;
END; (*1*)
CLOSE(FTEXTO);
WRITELN('');
WRITELN('LINEA, PALABRA',' ',CONTARLINEA,CONTARPALAB);
IF CONTARPALVOCAL AND CONTARLINEAVOC = 0 THEN
WRITELN('PALABRA NO ENCONTRADA')
ELSE
BEGIN
WRITELN('');
WRITELN('LA ULTIMA PALABRA QUE EMPIEZA POR DOS VOCALES JUNTAS ES:');
WRITELN('PALABRA: ',' ',CONTARPALVOCAL);
WRITELN('LINEA: ',' ',CONTARLINEAVOC);
END;
END. (*PROGRAM PRINCIPAL*)
eSPERO K TENGA ALGUNA SOLUCIÓN PORQUE ME ESTOY DESKICIANDO, MI PROFESORA KREO K NO TIENE NI IDEA JE. Gracias. tengo k solucionarlo pronto porque la tengo k entregar dentro de poco. Gracias.
Valora esta pregunta


0