Pascal/Turbo Pascal - 5.1 tema 7

 
Vista:
sin imagen de perfil

5.1 tema 7

Publicado por Erik (73 intervenciones) el 20/03/2014 16:07:43
hola tengo que hacer lo siguiente:

El siguiente programa convierte una cadena en otra. Escríbalo, compílelo y analice el código y el comportamiento. Describa el comportamiento.

Incluya comentarios y sangre adecuadamente el código, para que su comprensión sea más fácil

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
program modificaciondecadena;
var
cadenaoriginal:string[10];
cadenamodificada:string[10];
valornumerico:integer;
control:integer;
 
begin
writeln('Introduzca una cadena con mayúsculas y  minúsculas: ');
readln(cadenaoriginal);
cadenamodificada:=cadenaoriginal;
for control:=1 to length(cadenaoriginal)do
begin
if(cadenaoriginal[control]=upcase(cadenaoriginal[control])) then
Begin
valornumerico:=ORD(cadenaoriginal[control]);
cadenamodificada[control]:=CHR(valornumerico+32);
End
else
begin
cadenamodificada[control]:=upcase(cadenaoriginal[control]);
end;
end;
writeln('Esta es la cadena original: ',cadenaoriginal);
writeln('Esta es la cadena modificada: ',cadenamodificada);
end.

gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

5.1 tema 7

Publicado por Diego (98 intervenciones) el 24/03/2014 22:32:37
Es un programa que lo que hace es cambiar mayúsculas a minusculas y viceversa, todo esto basandose en la posiciónes del código ascii. ej: mi CasA (original) MI cASa(modificado);

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
program modificaciondecadena;
 var
    cadenaoriginal:string[10];
    cadenamodificada:string[10];
    valornumerico:integer;
    control:integer;
 begin
    writeln('Introduzca una cadena con mayúsculas y minúsculas: ');
    readln(cadenaoriginal);
    cadenamodificada := cadenaoriginal;
    for control:=1 to length(cadenaoriginal)do
        begin
             if(cadenaoriginal[control]=upcase(cadenaoriginal[control])) then
               Begin
                 valornumerico:=ORD(cadenaoriginal[control]);
                 cadenamodificada[control]:=CHR(valornumerico+32);
               end
             else
               begin
                    cadenamodificada[control]:=upcase(cadenaoriginal[control]);
               end;
        end;
    writeln('Esta es la cadena original: ',cadenaoriginal);
    writeln('Esta es la cadena modificada: ',cadenamodificada);
 end.
{Nota: La distancia entre una letra mayuscula y su igual en minuscula es de 32 posiciones, he allí el porque de ese avanze de 32 e el programa};
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar