Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Por que o [i]?

(https://cdn1.gnarususercontent.com.br/1/1333590/969ca488-fc60-44b1-9019-d6fa4c5db735.png)

nessa parte do vídeo o professor usa (palavrasecreta (i] == chute). Por que devemos usar o (i] ? não poderia ser apenas (palavrasecreta == chute)?

usei ( no lugar do "abre colchete".

1 resposta
solução!

Olá Christian, tudo bem com você?

A utilização dos colchetes, é porque se trata de um array, ou vetor, que é uma estrutura de dados que guarda elementos de forma sequencial. Na linguagem C, quando guardamos informações do tipo texto, internamente o computador guarda um array de caracteres, por exemplo:

MELANCIA

A representação no computador será:


[0] [1] [2] [3] [4] [5] [6] [7] 
 M   E   L   A   N   C   I   A

Ou seja, cada caractere é armazenado em uma posição do Array. Sendo assim, ao utilizar um laço de repetição como:

for(int i = 0; i < strlen(palavraSecreta); i++){
    if(palavraSecreta[i] == chute){
        printf("A posição %d tem essa letra!", i);
    }
}

O que está acontecendo é o seguinte: O laço itera por toda a palavra MELANCIA, letra por letra e verifica se a letra na posição é igual à letra chutada; caso seja igual, vai ser mostrado que nessa posição tem a letra chutada, caso contrário o programa não vai fazer nada.

Sendo assim, a utilização do colchete [i], acontece para iterar sobre as letras da palavraSecreta e verificar se o chute foi correto ou não.

Em caso de dúvidas, fico à disposição.

Um grande abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software