Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
jessicaburiche

Programa em C não conta corretamente.

Recommended Posts

Boa tarde!

Sou novata em programação e estou fazendo um exercício da faculdade, onde tenho que fazer 5 perguntas à uma pessoa e, dependendo das respostas, dizer se ela é "cumplice, suspeita, inocente, ou assasina". Achei que seria bem fácil e comecei a fazer o programa, porém, mesmo achando que tinha terminado, ele não conta certo a quantidade de respostas "sim" e "não". Não consigo enxergar onde está o erro. Por favor, se alguém puder me ajude. Uso o Dev- C++.

Obrigada



//Exercício 4 - valor 2,0 pontos
//Faça um programa que faça 5 perguntas para uma pessoa sobre um crime. As perguntas são:
//"Telefonou para a vítima?"
//"Esteve no local do crime?"
//"Mora perto da vítima?"
//"Devia para a vítima?"
//"Já trabalhou com a vítima?"
//O programa deve no final emitir uma classificação sobre a participação da pessoa no crime.
//Se a pessoa responder positivamente a 2 questões ela deve ser classificada como "Suspeita",
//entre 3 e 4 como "Cúmplice" e 5 como "Assassino".
//Caso contrário, ele será classificado como "Inocente".

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>

int main ()
{
char r1, r2, r3, r4, r5, s, n;
s=0;
s=0;
system("cls");
printf("INVESTIGACAO\n\n\n");
printf ("Responda com [Sim] ou [Nao]:\n\n");
printf("Telefonou para a vitima?\n");
scanf ("%d\n", &r1);
if (r1,"sim")
s=s+1;
else if (r1,"nao")
n=n+1;
{
printf("Esteve no local do crime?\n");
scanf ("%s\n", &r2);
if (r2,"sim")
s=s+1;
else if (r2,"nao")
n=n+1;
{
printf("Mora perto da vitima?\n");
scanf ("%s\n", &r3);
if (r3,"sim")
s=s+1;
else if (r3,"nao")
n=n+1;
{
printf("Devia para a vitima?\n");
scanf ("%s\n", &r4);
if (r4,"sim")
s=s+1;
else if (r4,"nao")
n=n+1;
{
printf("Ja trabalhou com a vitima?\n");
scanf ("%s\n", &r5);
if (r5,"sim")
s=s+1;
if (r5,"nao")
n=n+1;
}}}
{
scanf ("%d", s);
scanf ("%d", n);
if (s==2)
{
printf ("\nSuspeita\n\n");
}
else if (s==3)
{
printf ("\nCumplice\n\n");
}
else if (s==4)
{
printf ("\nCumplice\n\n");
}
else if (s==5)
{
printf ("\nAssasino\n\n");
}
else
{
printf ("\nInocente\n\n");
}
system("pause");
}}}


:wacko:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu acho que o problema está na comparação que você está usando,

if(r1,"sim")

De fato nem entendi o que você quis dizer. Eu sugeriria

if([COLOR="Blue"]r1[0] == 's'[/COLOR])
{
s = s + 1;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites
Eu acho que o problema está na comparação que você está usando,

if(r1,"sim")

De fato nem entendi o que você quis dizer. Eu sugeriria

if([COLOR="Blue"]r1[0] == 's'[/COLOR])
{
s = s + 1;
}

Mesmo assim ainda não consegui fazer. O caso, é que eu preciso contar o número de respostas "sim" e dizer qual a classificação da pessoa em relação ao crime: "Inocente, suspeito, cúmplice ou assassino".

Mudei totalmente o código e utilizei Switch case, usando como resposta números, para ficar mais fácil comparar, mas ainda sim não consigo fazê-lo contar corretamente. Por favor, se puder me ajude, pois eu já tentei de tudo.

Segue abaixo o novo código:


#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main ()
{

int s, n, resp, cont;
s=0;
n=0;
printf("INVESTIGACAO\n\n\n");
printf ("Responda com [s] Sim ou [n] Nao:\n\n");
printf ("Telefonou para a vitima?\n");
scanf ("%d", &resp);
switch (resp)
{
case 1:
printf ("sim\n\n");
cont++;
break;
case 0:
printf ("nao\n\n");
}
printf ("Esteve no local do crime?\n");
scanf ("%d", &resp);
switch (resp)
{
case 1:
printf ("sim\n\n");
cont++;
break;
case 0:
printf ("nao\n\n");
}
printf ("Mora perto da vitima?\n");
scanf ("%d", &resp);
switch (resp)
{
case 1:
printf ("sim\n\n");
cont++;
break;
case 0:
printf ("nao\n\n");
}
printf ("Devia para a vitima?\n");
scanf ("%d", &resp);
switch (resp)
{
case 1:
printf ("sim\n\n");
cont++;
break;
case 0:
printf ("nao\n\n");
}
printf ("Ja trabalhou com a vitima?\n");
scanf ("%d", &resp);
switch (resp)
{
case 1:
printf ("sim\n\n");
cont++;
break;
case 0:
printf ("nao\n\n");
break;
}
{
if (cont <<= 1)
{
printf ("inocente\n\n");
}
else if (cont == 2)
{
printf ("suspeito\n\n");
}
else if (cont == 3)
{
printf ("cumplice\n\n");
}
else if (cont == 4)
{
printf ("cumplice\n\n");
}
else if (cont == 5)
{
printf ("assassino\n\n");
}
{
}
{
}
system ("pause");

}}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×