Logo Hardware.com.br
jojo2000
jojo2000 Novo Membro Registrado
2 Mensagens 0 Curtidas

Comparação de string no operador lógico and e or

#1 Por jojo2000 21/02/2018 - 17:59
Olá galera!

Comecei a mexer com programação e estou com dificuldades em montar uma estrutura de decisão de duas strings. Preciso colocar se masculino e feminino forem diferentes, podem dançar (seria pra ler o que coloquei no if); se for do mesmo sexo, seria pra NÃO dançar (else). Toda vez que rodo o programa ou todas as respostas são if e se mudo a definição de decisão o programa interpreta tudo como else. Vou colocar aqui:

[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]



int main (){

setlocale(LC_ALL,"Portuguese");
system("color 0B");

char genero1[3], genero2[3], nome1[100], nome2[100];

printf("Primeiro, digite seu nome\n");
scanf("%s", &nome1);
printf("Insira seu gênero, m se você for homem ou f se for mulher\n");
scanf("%s", &genero1);

printf("Agora por favor digite o nome do seu par \n");
scanf("%s", &nome2);
printf("Insira o gênero de seu par, m se você for homem ou f se for mulher\n");
scanf("%s", &genero2);



if ( (genero1=='m' && genero2=='f') || ( genero1 == 'f' && genero2=='m' ) ) // PRECISO AQUI DE AJUDA!!!! SE MUDO || POR && O PROGRAMA INTERPRETA TUDO COMO 'PODE DANÇAR' OU 'NÃO PODE'... ELE SIMPLESMENTE NÃO ESTÁ INTERPRETANDO A DIFERENÇA .

{
printf("%s %s vocês podem dançar. \n", nome1, nome2);
}

else

{
printf("%s %s não é apropriado vocês dançarem. \n", nome1, nome2);
printf("Por favor busquem outras pessoas para ser seus pares. \n");
}

return 0;}


help!!!!! está saindo fumaça dos meus miolos
esquiloesperto
esquiloesper... Cyber Highlander Moderador
7.1K Mensagens 2.2K Curtidas
#2 Por esquiloesper...
21/02/2018 - 21:06
faceiro.pngfaceiro.pngnao_quero_nem_ver.pngnao_quero_nem_ver.png...
- Desculpa... Mas eu não aguentei!!

Eu tenho certeza de que você também vai rir quando conseguir ver que seu problema se resume (e se resolve) simplesmente fazendo assim:
SE (genero1 == genero2)
ENTÃO
"não dança";
SENÃO
"dança sim"


smile.png Não e verdade mesmo? rindo_ate_agora.png... Viu só? piscadela.png
Só é difícil enquanto estiver oculto! cool.png
Use a pesquisa


rolleyes.png  Navegar é preciso, viver... também.  smile.png
jojo2000
jojo2000 Novo Membro Registrado
2 Mensagens 0 Curtidas
#3 Por jojo2000
22/02/2018 - 18:19
jojo2000 disse:
Olá galera!

Comecei a mexer com programação e estou com dificuldades em montar uma estrutura de decisão de duas strings. Preciso colocar se masculino e feminino forem diferentes, podem dançar (seria pra ler o que coloquei no if); se for do mesmo sexo, seria pra NÃO dançar (else). Toda vez que rodo o programa ou todas as respostas são if e se mudo a definição de decisão o programa interpreta tudo como else. Vou colocar aqui:

[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]
[HASHTAG]#include[/HASHTAG]



int main (){

setlocale(LC_ALL,"Portuguese");
system("color 0B");

char genero1[3], genero2[3], nome1[100], nome2[100];

printf("Primeiro, digite seu nome\n");
scanf("%s", &nome1);
printf("Insira seu gênero, m se você for homem ou f se for mulher\n");
scanf("%s", &genero1);

printf("Agora por favor digite o nome do seu par \n");
scanf("%s", &nome2);
printf("Insira o gênero de seu par, m se você for homem ou f se for mulher\n");
scanf("%s", &genero2);



if ( (genero1=='m' && genero2=='f') || ( genero1 == 'f' && genero2=='m' ) ) // PRECISO AQUI DE AJUDA!!!! SE MUDO || POR && O PROGRAMA INTERPRETA TUDO COMO 'PODE DANÇAR' OU 'NÃO PODE'... ELE SIMPLESMENTE NÃO ESTÁ INTERPRETANDO A DIFERENÇA .

{
printf("%s %s vocês podem dançar. \n", nome1, nome2);
}

else

{
printf("%s %s não é apropriado vocês dançarem. \n", nome1, nome2);
printf("Por favor busquem outras pessoas para ser seus pares. \n");
}

return 0;}


help!!!!! está saindo fumaça dos meus miolos

esquiloesperto disse:
faceiro.pngfaceiro.pngnao_quero_nem_ver.pngnao_quero_nem_ver.png...
- Desculpa... Mas eu não aguentei!!

Eu tenho certeza de que você também vai rir quando conseguir ver que seu problema se resume (e se resolve) simplesmente fazendo assim:
SE (genero1 == genero2)
ENTÃO
"não dança";
SENÃO
"dança sim"


smile.png Não e verdade mesmo? rindo_ate_agora.png... Viu só? piscadela.png


oi cara! valeu a dicaboa.gif! Fiquei querendo usar o and or que compliquei minha vida hahahahadaa.pngdaa.pngdaa.pngdaa.png
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal