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

Duvida sobre o for(int j = 0; j < tentativas; j++)

Nesta aula o professor declarou a variável TENTATIVAS = 0. E depois fez um for, com INT J = 0 E J< TENTATIVAS.

gostaria de saber como funciona o FOR , se j =0 e tentativas =0. E o FOR é para rodar enquanto j for menor que tentativas, mas ambos tem o valor de 0;

/*

#include <stdio.h>

#include <string.h>

int main() {

char palavrasecreta[20];
sprintf(palavrasecreta, "MELANCIA");

int acertou = 0;
int enforcou = 0;

char chutes[26];
int tentativas = 0;                   // AQUI  VARIAVEL TENTATIVAS =0;

do {

    for(int i = 0; i < strlen(palavrasecreta); i++) {
        int achou = 0;

        for(int j = 0; j < tentativas; j++) {              //AQUI J = 0;
            if(chutes[j] == palavrasecreta[i]) {
                achou = 1;
                break;
            }
        }
        */








} while (!acertou && !enforcou);

}

1 resposta
solução!

oi tudo bem? No tempo 5:20 ele adiciona a linha tentativa++, entao vc esta certo na primeira vez nao vai entrar nesse loop, pq nao foi feita nenhuma tentativa e i e tentativas sao iguais a 0, assim que vc faz um tentativa ele vai somar mais um na tentativa, ai a variavel tentantivas vai estar igual 1, entao ele vai entrar no for 1 vez, to mostrando o codigo que vi na aula

#include <stdio.h>

#include <string.h>

int main() {
char palavrasecreta[20];
sprintf(palavrasecreta, "MELANCIA");

int acertou = 0;
int enforcou = 0;

char chutes[26];
int tentativas = 0;  
 for(int i = 0; i < strlen(palavrasecreta); i++) {
        int achou = 0;

        for(int j = 0; j < tentativas; j++) {              //AQUI J = 0;
            if(chutes[j] == palavrasecreta[i]) {
                achou = 1;
                break;
            }
        }

        char chute;
        scanf("%c",&chute);
        chutes[tentativas] =chute;
        tentativas++; // aqui é incrementado o que faz ele entrar no for de tentantivas, quando inicicar o laço do{}while()
        */