Eu não sei se eu fiz alguma coisa errada, mas quando eu executo o programa ele quebra o loop na primeira tentativa, independente do número do chute.
int main(){
int segundos = time(0); srand(segundos);
int numerogrande = rand();
int numerosecreto = numerogrande % 100;
int chute;
int tentativas = 1;
double pontos = 1000;
int acertou = 0;
int nivel;
printf("Qual o nível de dificuldade?\n");
printf("(1) Fácil (2) Médio (3) Difícil\n\n");
printf("Escolha: ");
scanf("%d", &nivel);
int numerodetentativas;
switch(nivel) {
case 1:
numerodetentativas = 20;
break;
case 2:
numerodetentativas = 15;
break;
default:
numerodetentativas = 6;
break;
}
for(int i = 1; i <= numerodetentativas; i++) {
printf("Tentativa %d\n", tentativas);
printf("Qual é o seu chute? ");
scanf("%d", &chute);
printf("Seu chute foi %d\n", chute);
if(chute < 0) {
printf("Você não pode chutar números negativos!\n");
continue;
}
acertou = (chute == numerosecreto);
int maior = chute > numerosecreto;
if(acertou){
break;
} else{
printf("Você perdeu! Tente de novo!\n");
printf("%d",numerodetentativas);
if(maior) {
printf("Seu chute foi maior que o número secreto\n");
}
else {
printf("Seu chute foi menor que o número secreto\n");
}
tentativas++;
double pontosperdidos = abs(chute - numerosecreto) / (double)2;
pontos = pontos - pontosperdidos;
}
return 0;
}
}