Pesquisar este blog

Livros Recomendados

quarta-feira, 15 de dezembro de 2021

URI (BEECROWD) - 3301 - Sobrinho do Meio - Iniciante - C e C++

Fala pessoal! Depois de um tempinho sem postar solução, resolvi entrar no beecrowd hoje e resolver mais um exercício. Hoje eu fiz o "Sobrinho do Meio". Exercício bem simples. Cheguei a tomar rejeição por esquecer do scanf !-- mas faz parte. O exercício é muito simples, mesmo. Veja na sequência a solução dele em C e C .

Antes de resolver qualquer algoritmo do URI (BEECROWD agora), recomendamos seguir os seguintes passos:

  1. Ler todo enunciado do problema.
  2. Ler os tópicos do fórum em caso de dúvidas
  3. Preparar arquivos de entrada para teste, considerando as entradas de exemplo do URI, do udebug e outros valores limite;
  4. Preparar o ambiente de desenvolvimento e utilizar os mesmos parâmetros dos compiladores do URI
  5. Preparar um código-fonte padrão, já contendo a chamada às bibliotecas padrão, pré-processadores, retorno de função e um comando de escrita com "\n", pois no URI a grande maioria dos problemas exige a quebra de linha final.


Plataforma
: URI (BEECROWD)

Problema3301

Enunciado:

Tio Patinhas era um milionário que vivia em sua mansão, e tinha três sobrinhos: Huguinho, Zezinho e Luisinho. Ele se confundia facilmente entre os três sobrinhos, pois eram bem parecidos, apesar de terem idades diferentes. Um dia, os três fizeram uma aposta com o tio: se ele acertasse quem era o sobrinho do meio, ou seja, nem o mais novo, nem o mais velho, eles dariam uma moeda de ouro para ele, e se ele errasse, teria que dar uma moeda de ouro para cada um. Assim, o tio pede a tua ajuda para que ele possa ganhar essa aposta.

Linguagens: C e C++

Solução:

Utilizei a mesma lógica para resolver os exercício em C e C++.  Precisamos obter o valor do meio, ou seja, aquele que é maior que um e menor que o outro. Fiz apenas as condições necessárias para dois casos e o terceiro fica no bloco else. Assim temos as três possibilidades.
Utilizei o tipo unsigned short int porque idade é um valor sem sinal (não existe idade negativa) e o intervalo de valores é menor (tal como seria para a idade de uma pessoa), apesar do exercício mencionar valor inteiro. Deu certo! Veja na sequência os códigos em C e C++.

Código em C:

#include <stdio.h>

int main() {
    
    unsigned short int h, z, l;
    
    scanf("%hu %hu %hu", &h, &z, &l);
    
    if ((z > h && h > l) || (z < h && h < l))
        printf("huguinho");
    else if ((h > z && z > l) || (h < z && z < l))
        printf("zezinho");
    else
        printf("luisinho");

    printf("\n");
    
    return 0;
}


Código em C++:

#include <iostream>

int main() {
    
    unsigned short int h, z, l;
    
    std::cin >> h >> z >> l;
    
    if ((z > h && h > l) || (z < h && h < l))
        std::cout << "huguinho";
    else if ((h > z && z > l) || (h < z && z < l))
        std::cout << "zezinho";
    else
        std::cout << "luisinho";

    std::cout << std::endl;
    
    return 0;
}

Nenhum comentário:

Postar um comentário

Postagem em destaque

URI (BEECROWD) - 2158 - Helping Uncle Cláudio (Ajudando o Tio Cláudio) - Matemática - C, C++ e Haskell

Buenas! Estou aqui mais uma vez para resolver um problema de Matemática! Agora tenho resolvido alguns dessa categoria, pra que vocês possam ...

Postagens mais visitadas