martes, 13 de diciembre de 2011

Ejercicio 27 (Procedimientos y funciones)

Plantee e implemente un programa en PASCAL que indique si una palabra es o
no palíndroma


PROGRAM palindronomia (input,output);
(*Programa que te dice si una palabra es o no palíndrona*)
TYPE
    TCadena=string(20);
VAR
    Cadena:TCadena;
    palin:boolean VALUE TRUE;
    c:char;
PROCEDURE pedir_cadena;
          BEGIN
               Writeln('Escriba la palabra que quiere que comprobar si es o no palíndrona.');
               Readln(Cadena);
          END;
FUNCTION palindrona (Cadena:Tcadena):boolean;
         VAR
            i:integer VALUE (1);
            j:integer VALUE (length(Cadena));
            pali:boolean VALUE TRUE;
         BEGIN
              WHILE (i<j) AND (pali) DO
                    BEGIN
                         IF Cadena[i] <> Cadena[j] THEN
                            BEGIN
                            pali:=FALSE
                            END;
                         i:=i+1;
                         j:=j-1;
                    END;
              palindrona:=pali;
         END;
PROCEDURE leerc;
          BEGIN
               readln(c);
          END;
PROCEDURE iniciar;
          BEGIN
          pedir_cadena;
          palin:=palindrona(Cadena);
          IF palin THEN
             Writeln('La palabra es palíndrona.')
          ELSE
              Writeln('La palabra no es palíndrona.');
          leerc;
          END;
BEGIN
     iniciar;
END.        

Ejemplo de ejecucion


1 comentario:

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | GreenGeeks Review