Informática, perguntado por osvaldovilela, 1 ano atrás

QUESTÃO 1
A Sociedade Brasileira de Computação (SBC) promove, anualmente, a maratona de programação. Nesse evento, competidores de toda a América Latina competem em um desafio em que o raciocínio matemático e a capacidade de trabalhar sob pressão são avaliados a níveis extremos. Em uma de suas edições, a SBC incluiu um exercício que faz referência ao jogo “Zerinho ou Um” (também conhecido como “Dois ou Um”, em algumas localidades do país). O jogo funciona como descrito a seguir:


“Cada jogador escolhe um valor entre zero ou um; ao som de um comando (geralmente um dos competidores anuncia em voz alta 'Zerinho ou... Um!'), todos os participantes mostram o valor escolhido, utilizando uma das mãos: se o valor escolhido foi um, o competidor mostra o dedo indicador estendido; se o valor escolhido foi zero, mostra a mão com todos os dedos fechados. O ganhador é aquele que tiver escolhido um valor diferente de todos os outros; se não há um jogador com valor diferente de todos os outros (por exemplo todos os jogadores escolhem zero, ou um grupo de jogadores escolhe zero e outro grupo escolhe um), não há ganhador. ”
Disponível em: . Acesso em: 30 abr. 2018.


Ana, Bob e Carlos são grandes amigos e jogam Zerinho ou um a toda hora: para determinar quem será o motorista da rodada, quem vai pagar a conta e etc. Jogam tanto, que resolveram fazer um aplicativo de celular para jogar. Como não sabem programar, dividiram as tarefas entre amigos que sabem, inclusive você. Dados os três valores escolhidos por Ana, Bob e Carlos, cada valor, zero ou um, escreva um algoritmo que determina se há um ganhador e, nesse caso, determina quem é o ganhador.

- O algoritmo deve receber, como entrada, três valores inteiros que serão armazenados nas variáveis A, B e C, indicando os valores escolhidos por Ana, Bob e Carlos, respectivamente.

- O algoritmo deverá produzir uma única saída, imprimindo apenas um caractere. Se o vencedor for Ana, deve-se imprimir a letra “A”, na tela; se o vencedor for Bob, é preciso mostrar o caractere “B”, na tela; se Carlos for o ganhador, então deve-se imprimir “C”. Por fim, se não houver vencedor, deve-se imprimir um asterisco, “*”, na tela.


Deve-se considerar que o usuário sempre irá digitar ou o número um (1) ou o número zero (0). Não é preciso que o algoritmo trate as entradas que não estiverem dentro do padrão de zero ou um. Se o usuário informar valores diferentes de zero ou um, é possível ignorar a saída produzida pelo programa.





Soluções para a tarefa

Respondido por jvsilvictorox7rfj
8


Segue código em C:



#include <stdio.h>

int main()
{
    int A, B, C;
   
    printf("Ana, informe 0 ou 1: ");
    scanf("%d", &A);
   
    printf("Bob, informe 0 ou 1: ");
    scanf("%d", &B);
   
    printf("Carlos, informe 0 ou 1: ");
    scanf("%d", &C);
   
    printf("\nVencedor: ");
   
    if((A == B) && (B == C))
    {
        printf("*"); //Não houve vencedor
    }
    else if((A == B) && (B != C))
    {
        printf("C"); //Carlos ganhou
    }
    else if((A == C) && (B != C))
    {
        printf("B"); //Bob ganhou
    }
    else if((B == C) && (A != C))
    {
        printf("A"); //Ana ganhou
    }

    return 0;
}




osvaldovilela: tem como montar o algoritmo com estruturas condicionais
jvsilvictorox7rfj: Foi justamente o que eu fiz. Os "if" e "else if" são as estruturas condicionais do algoritmo.
Perguntas interessantes