Ir ao conteúdo

Ajuda com código


tiagobfr

Posts recomendados

Postado

Faço analise de sistemas e preciso de uma ajuda programa q pegue um cactere mostre ao usuario o caractere e ele tem q digitar esse caractere exemplo 'a ' aii o cara digita a tb se o cara acerta a letra passa para prox se n acerta continua na mesma até o cara acerta, sei q usa string mais n conseguir mt bem desenvolver meu codigo e meu codigo ficou assim

#include<stdio.h>

#include<string.h>

main()

{

char letra[]= {'a ','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','y','x','z'};

int i=0;

char alfabeto;

int pontos;

while(alfabeto!=letra&&i<26){

printf("%c",letra);

scanf("%c",alfabeto);

if (letra==alfabeto){

pontos++;}

}

printf("seus pontos sao: %i",pontos);

}

meu codigo n ta rodando

Postado

Não entendi muito bem a ideia desse jogo...

Tentei e fiz assim:

#include<stdio.h>
#include<string.h>

main(){
char letra='a', alfabeto;
int pontos=0;
while(1){
printf("\n\n%c... Qual letra foi digitada? ", letra);
scanf("%c%*c", &alfabeto);
if(alfabeto==letra)
pontos++;
else
break;
if(letra=='z')
break;
letra++;
}
if(letra=='z')
printf("\n\nParabens.. acertou tudo\n\n");
else
printf("\n\nQue pena... voce nao acertou tudo\n\n")
printf("\nseus pontos sao: %d\n", pontos);
getch();
}

Se tiver alguma errada por favor avise...

Postado

Cara, eu acabei de ver aqu um erro:

Do jeito que está se a pessoa acertar tudo, exceto a letra 'z', vai dizer que ela acertou tudo sendo que ela não acertou tudo...

para arrumar isso troque onde está:


if(letra=='z')
printf("\n\nParabens.. acertou tudo\n\n");
else

por isso:


if(pontos==26)
printf("\n\nParabens.. acertou tudo\n\n");
else

Desculpe o erro.. Passou despercebido

Postado

eu uso o dev-c++ e as vezes usando laço de repetição se não colocar o "%*c"ele meio que trava, nao sei o por que. Uma vez minha professora explicou, mas eu não lembro.

Mas tenta só com o scanf("%c") pra ver se funciona.

Postado

faço analise e tenho um projeeto de um jogo no allegro mas n estou conseguindo mexer mt bem no allegro eu tenho q converte o meu codigo em c puro para o allegro, no meu jogo umas letras vão aparecer subindo na tela e o usuario vai ter q digitar a letra q aparecer quanto mais o tempo passa as letras sobem mais rápido se alguem puder me ajudar agradeço o meu codigo em c ficou assim

#include<stdio.h>

#include<string.h>

main(){

char letra='a', alfabeto;

int pontos=0, e=0;

while(1){

printf("\n\n%c... Qual letra foi digitada? ", letra);

scanf("%c%c", &alfabeto);

if(alfabeto==letra)

pontos++;

else

break;

if(letra=='z')

break;

letra++;

}

if(letra=='z')

printf("\n\nParabens.. acertou tudo\n\n");

else

printf("\n\nQue pena... voce nao acertou tudo\n\n");

printf("\nseus pontos sao: %d\n", pontos);

getch();

}

Postado

estou com um projeto para fazer um jogo na biblioteca conio mas ainda n sei mt bem mexer nos comandos no meu jogo vai subindo umas letras na tela e o usuario tem q digitar as letras q vão aparecendo e com o passar do tempo a velocidade das letras vão aumentando, fiz um codigo mas n sei como fazer para as letras subirem, se alguem puder me ajudar agradeço, o meu codigo so em c ficou assim.

#include<stdio.h>

#include<string.h>

main(){

char letra='a', alfabeto;

int pontos=0, e=0;

while(1){

printf("\n\n%c... Qual letra foi digitada? ", letra);

scanf("%c%*c", &alfabeto);

if(alfabeto==letra)

pontos++;

else

break;

if(letra=='z')

break;

letra++;

}

if(letra=='z')

printf("\n\nParabens.. acertou tudo\n\n");

else

printf("\n\nQue pena... voce nao acertou tudo\n\n");

printf("\nseus pontos sao: %d\n", pontos);

getch();

}

  • 4 semanas depois...
Postado

#include<stdio.h>

main()

{

int num,div=0,i;

printf("digite o valor");

scanf("%i",&num);

for(i=0;i<num;i++){

if(num%i==0){

div++;

}

if (div==2){

printf("o numero he primo");

}

else {printf("o numero n he primo")}

}

Postado

# include <math.h>
int main(void){
int num, raiz, i, primo=0;
printf("digite o valor\n");
scanf("%d", &num);
raiz = sqrt(num) + 1;
if(num==2)
primo = 1;
else
if(num%2==0)
primo = 2;
if(primo==0){
primo = 1;
for(i=3; i<raiz; i=i+2){
if(num%i==0){
primo = 0;
break;
}
}
}
if(primo==1)
printf("o numero é primo");
else
printf("o numero n é primo");
getch();
return 0;
}

Se precisar que fique mais rápido (uma vez tive que fazer isso para resolver um problema no SPOJ igual a esse), você pode fazer do mesmo jeito que eu fiz com o número 2(que é primo), com alguns outros como o 3, 5, 7 ou até o 11.

Assim evita, por exemplo:

Num = 997 (É um número primo)

> ele não vai ser dividido por 3, logo não precisa dividir pelos múltiplos de 3, como 6, 9, 12, 15, 18, 21... Então seu código ficaria mais rápido por economizar divisões que não te ajudam em nada, claro que apenas quando o usuário digitar números exagerados, se forem para números pequenos o código assim está de bom tamanho.

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!