Escreva um programa que leia duas strings e gere uma terceira string, na qual os caracteres da segunda foram retirados da primeira.
Exemplo:
string: AATTGGAA
string: TG
string: AAAA
Exemplo:
Passo 1
Beleza, o que a gente tem que fazer aqui é: criar um programinha que leia duas strings (vamos chamar de primeira e segunda) e produza uma terceira string que é igual à primeira, mas tirando todos os caracteres que aparecem na segunda.
Conteúdo da matéria: manipulação de strings, laços (loops) e teste de condição (if). Vamos precisar saber como percorrer uma string caractere por caractere e como checar se um caractere está em outra string.
Conteúdo da matéria: manipulação de strings, laços (loops) e teste de condição (if). Vamos precisar saber como percorrer uma string caractere por caractere e como checar se um caractere está em outra string.
Passo 2
Primeiro a gente vai ler as duas strings. Em Python, por exemplo, é só usar
input()
. Vamos chamar de s1
a primeira e s2
a segunda.Passo 3
Agora a gente precisa construir a terceira string, que chamo de
Em pseudocódigo:
resultado
. A ideia é percorrer cada caractere c
em s1
e só concatenar em resultado
se c
não estiver em s2
.Em pseudocódigo:
resultado = ""
para cada c em s1:
se c não está em s2:
resultado = resultado + c
O teste “c está em s2?” em Python faz assim:
if c in s2:
. A negação é if c not in s2:
.Passo 4
Vamos ver o exemplo funcionando na cabeça:
- s1 = “AATTGGAA”
- s2 = “TG”
Percorremos s1:- c = ‘A’ → ‘A’ não está em “TG”? verdade → resultado = “A”
- c = ‘A’ → idem → resultado = “AA”
- c = ‘T’ → ‘T’ está em “TG”? sim → pulamos
- c = ‘T’ → idem → pulamos
- c = ‘G’ → ‘G’ está em “TG”? sim → pulamos
- c = ‘G’ → idem → pulamos
- c = ‘A’ → não está em “TG” → resultado = “AAA”
- c = ‘A’ → idem → resultado = “AAAA”
No final,
resultado = "AAAA"
.Passo 5
Bastaria colocar isso num programa Python assim:
# lê as duas strings
s1 = input("1ª string: ")
s2 = input("2ª string: ")
# constrói a 3ª string
resultado = ""
for c in s1:
if c not in s2:
resultado += c
# mostra o resultado
print("3ª string:", resultado)
Resposta
O programa acima lê as duas strings e imprime a terceira removendo todos os caracteres da segunda. No exemplo dado, ele gera
AAAA
.