Escreva um programa que recebe uma string
e inteiros não-negativos I e J e imprima o segmento S[I…J].
Passo 1
O enunciado pede um programa que, dado uma string S e dois índices não-negativos I e J, imprima o segmento de S que vai de I até J, inclusive. O conteúdo aqui é operação com strings e indexação ou slicing, precisamos entender que em muitas linguagens os caracteres de uma string são numerados a partir de 0.
Passo 2
Ler a string S do input. Em seguida, ler os inteiros I e J do input. Geralmente fazemos isso em duas etapas: uma para a string e outra para os valores numéricos.
Passo 3
Extrair o pedaço da string que vai da posição I até a posição J. Em Python, por exemplo, usamos slicing e lembramos que o índice final em slicing é exclusivo, então colocamos J+1.
Passo 4
Imprimir o segmento extraído.
Passo 5
Testar o programa com alguns casos, como S = “abcdef”, I = 2, J = 4, que deve resultar em “cde”.
Resposta
Exemplo em Python
def main():
S = input().strip()
I, J = map(int, input().split())
# em Python o slicing S[a:b] retorna de a até b-1, por isso usamos J+1
segmento = S[I:J+1]
print(segmento)
S = input().strip()
I, J = map(int, input().split())
# em Python o slicing S[a:b] retorna de a até b-1, por isso usamos J+1
segmento = S[I:J+1]
print(segmento)
if name == “main”:
main()
main()