Problem

8 /13


Bucle a través de todos los personajes

Theory Click to read/hide

Dado que se puede acceder a un carácter por índice, puede usar un bucle variable para iterar sobre todos los caracteres, lo que tomará posibles valores de índice. Por ejemplo, un programa que muestra todos los códigos de caracteres de la cadena s se vería así for i := 1 to length(s) do escribir(s[i], ord(s[i])) Explicaciones para el programa:
1) La función length(s) encuentra la longitud de una cadena. El índice del primer carácter es 1 y el índice del último es longitud(es). La variable de bucle i solo tomará valores de 1 a longitud(es).
2) En cada línea, primero se mostrará el símbolo en sí y luego su código, que es devuelto por la función integrada ord()

La misma enumeración se puede escribir más corta: para c en s do      writeln(c, ord(c)); En este fragmento, el encabezado del ciclo recorre todos los caracteres s, colocándolos a su vez en la variable c.

La peculiaridad de Pascal cuando se trabaja con cadenas es que las cadenas son objetos mutables. En otras palabras, podemos cambiar caracteres individuales de una cadena.
Por ejemplo, la siguiente instrucción funcionará s[5] := 'a'; También puede componer una nueva cadena a partir de los caracteres con los cambios necesarios.
Por ejemplo, un programa que reemplaza todos los caracteres 'a' a los caracteres 'b' se verá así: lectura(s);     for i := 1 to length(s) do begin         si s[i] = 'a'entonces s[i] := 'b';     fin; escritura(s); En este ejemplo, recorremos todos los caracteres de la cadena s. En el cuerpo del bucle, comprobamos el valor de la variable s[i]: si el carácter coincide con el carácter 'a', lo reemplazamos con 'b'.
 

Problem

Escriba un programa que reemplace todos los puntos en una cadena con ceros y todas las letras "X" unidades. 

Ejemplos
# Entrada Salida
1 ..X..XX 0010011