Pesquisar este blog

Livros Recomendados

Mostrando postagens com marcador 1761. Mostrar todas as postagens
Mostrando postagens com marcador 1761. Mostrar todas as postagens

terça-feira, 23 de fevereiro de 2021

URI (BEECROWD) - 1761 - Decoração Natalina - Matemática - C e C++

Decoração Natalina! Um problema de Matemática, bem simples, que resolvi e trago aqui pra  vocês a solução! Confere na sequência!!!

Plataforma: URI (BEECROWD)
Problema1761

Enunciado:

Neste Natal, Papai Noel designou alguns de seus mais dedicados elfos para enfeitar o quintal da fábrica de presentes no Polo Norte. No quintal haviam vários pinheiros, de tamanhos diversos.

Papai Noel orientou aos elfos que para enfeitar uma árvore com cordões luminosos, o tamanho dos mesmos deveria ser 5 vezes o tamanho da árvore.

Para descobrir a altura de cada árvore, Papai Noel deu a eles um teodolito velho (aparelho utilizado para medir ângulos) e mandou que utilizassem conceitos trigonométricos para descobrir a altura de cada árvore.

Sua tarefa é ajudar os elfos a descobrir uma forma de calcular a quantidade de cordões luminosos necessários para cada árvore.

Considere para este desafio que o teodolito fica posicionado na altura de cada elfo e que essa altura precisa ser computada. O teodolito informará valores em graus. Utilize neste problema PI = 3.141592654.


Linguagens: C e C++


Solução:

Basta calcular a hipotenusa e, tendo este valor, a altura, seguindo a fórmula. Você pode fazer tudo de uma vez ou separar. Eu, por organização, preferi fazer separado. Note que os valores precisam ser do tipo double e que há necessidade de delimitar a saída a duas casas decimais.

Código em C:

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

int main() {
    
    double a, b, c, altura, hip;
    while (scanf("%lf %lf %lf", &a, &b, &c) != EOF) {
        
        hip = b / cos(a * 3.141592654 / 180);
        altura = 5 * (sqrt(hip * hip - b * b) + c);
        printf("%.2lf\n", altura);
        
    }

    return 0;
}

Código em C++:

#include <iostream>
#include <iomanip>
#include <cmath>

using namespace std;

int main() {
    
    double a, b, c, altura, hip;
    while (cin >> a >> b >> c) {
        
        hip = b / cos(a * 3.141592654 / 180);
        altura = 5 * (sqrt(hip * hip - b * b) + c);
        cout << fixed << setprecision(2) << altura << endl;
        
    }

    return 0;
}

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