domingo, 19 de julio de 2026

Eliminar un carácter de una cadena en Python

Código del ejercicio:

s = input("Ingrese un texto: ")
e = input("Ingrese un carácter a eliminar: ")
aux = ""
i = 0
sw = 0
while i < len(s):
    if s[i] == e and sw == 0:
        sw = 1
    else:
        aux += s[i]
        sw = 0
    i += 1
print(aux)

Definición de los códigos del ejercicio:

input() --> permite obtener texto escrito por teclado.
while --> el bucle while evalúa una condición y luego ejecuta un bloque de código si la condición es verdadera.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
len() --> devuelve el número de elementos de un objeto.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
and --> devuelve True si ambos operandos son verdaderos.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
print() --> imprime un mensaje en la pantalla.

Explicación del Código:

Este programa permite ingresar un texto y un carácter. Luego recorre toda la cadena y elimina la primera aparición consecutiva del carácter indicado, guardando el resultado en una nueva cadena. Finalmente muestra el texto sin ese carácter.

Código

s = input("Ingrese un texto: ")
e = input("Ingrese un carácter a eliminar: ")
aux = ""
i = 0
sw = 0
while i < len(s):
    if s[i] == e and sw == 0:
        sw = 1
    else:
        aux += s[i]
        sw = 0
    i += 1
print(aux)

Explicación del código

Código Explicación
s = input("Ingrese un texto: ") Solicita al usuario que escriba una cadena de texto y la guarda en la variable s.
e = input("Ingrese un carácter a eliminar: ") Pide el carácter que se desea eliminar del texto.
aux = "" Crea una cadena vacía donde se irá formando el nuevo texto sin el carácter eliminado.
i = 0 Inicializa el contador que recorrerá cada posición de la cadena.
sw = 0 Es una bandera que indica si el carácter ya fue eliminado. Al inicio vale 0 porque aún no se ha eliminado ninguno.
while i < len(s): Recorre toda la cadena desde el primer hasta el último carácter.
if s[i] == e and sw == 0: Comprueba si el carácter actual es igual al que se quiere eliminar y además verifica que todavía no se haya eliminado uno anteriormente.
sw = 1 Marca que el carácter ya fue eliminado, por lo que no se agrega a la nueva cadena.
else: Se ejecuta cuando el carácter no debe eliminarse.
aux += s[i] Agrega el carácter actual a la nueva cadena.
sw = 0 Reinicia la bandera para permitir eliminar nuevamente si aparece otra secuencia del carácter.
i += 1 Avanza a la siguiente posición de la cadena.
print(aux) Muestra el texto final después de eliminar el carácter.

Funcionamiento paso a paso

  • El usuario escribe un texto.
  • Después ingresa el carácter que desea eliminar.
  • El programa recorre el texto letra por letra.
  • Cuando encuentra el carácter indicado por primera vez, no lo copia a la nueva cadena.
  • Los demás caracteres sí se copian normalmente.
  • Al finalizar, muestra el texto resultante.

Ejemplo de ejecución

Ingrese un texto: programación
Ingrese un carácter a eliminar: a

Resultado:
progrmción

Resumen

Este programa utiliza un ciclo while para recorrer una cadena carácter por carácter. La variable aux almacena el nuevo texto y la variable sw funciona como una bandera para controlar cuándo debe omitirse el carácter que se desea eliminar. Finalmente, se imprime la cadena resultante.

No hay comentarios.:

Publicar un comentario

Eliminar un carácter de una cadena en Python

Código del ejercicio: s = input ( "Ingrese un texto: " ) e = input ( "Ingrese un carácter a eliminar: " ) ...

Copyright © Ejercicios de programación. Todos los derechos reservados. ❤️