Você está aqui: C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Geometria, Trigonometria e Figuras Geométricas |
Como testar se um retângulo cabe dentro de um círculo usando C++ - Exercícios Resolvidos de C++Quantidade de visualizações: 694 vezes |
Pergunta/Tarefa: Vamos começar este exercício analisando a imagem abaixo: ![]() Note que temos um círculo e, dentro dele, um retângulo (lembre-se: um quadrado é um retângulo também). Pela imagem podemos ver que o retângulo cabe perfeitamente dentro do círculo. Escreva um programa C++ que pede para o usuário informar a altura e a largura do retângulo. Em seguida leia também o raio do círculo. Finalmente crie uma função C++ que receberá estes dados e informará se o retângulo cabe dentro do círculo, de acordo com as informações inseridas pelo usuário. Sua saída deverá ser parecida com: Largura do retângulo: 6 Altura do retângulo: 4 Raio do círculo: 5 O retângulo cabe no círculo. Veja a resolução comentada deste exercício em C++: Antes de vermos o código C++, dê uma olhada na imagem abaixo: ![]() Sabemos que o raio é a distância que vai do centro do círculo até a sua extremidade. Da mesma forma, podemos traçar uma distância a partir do centro do retângulo e tratar esta distância como a hipotenusa do nosso triângulo retângulo imaginário, que terá como cateto adjascente a largura do retângulo dividida por dois e como cateto oposto a altura do retângulo dividida por dois também. O retângulo vai caber no círculo se o raio do círculo for maior ou igual à hipotenusa que obtemos. Veja o código C++ completo para a resolução: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <string> #include <iostream> #include <math.h> using namespace std; // cabeçalho da função que recebe a largura e a altura do retângulo e o // raio do círculo e retorna true se o retângulo couber no // círculo e false em caso contrário int retangulo_cabe_circulo(int largura, int altura, int raio); int main(int argc, char *argv[]){ // variáveis usadas na resolução do problema int largura, altura, raio; // vamos pedir para o usuário informar as medidas // do retângulo cout << "Largura do retângulo: "; cin >> largura; cout << "Altura do retângulo: "; cin >> altura; // agora vamos pedir o raio do círculo cout << "Raio do círculo: "; cin >> raio; // vamos testar se o retângulo informado cabe no círculo // gerado a partir do raio dado if(retangulo_cabe_circulo(largura, altura, raio)){ cout << "O retângulo cabe no círculo.\n" << endl; } else{ cout << "O retângulo não cabe no círculo.\n" << endl; } system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } // função que recebe a largura e a altura do retângulo e o // raio do círculo e retorna true se o retângulo couber no // círculo e false em caso contrário int retangulo_cabe_circulo(int largura, int altura, int raio){ // vamos tratar metade da largura do retângulo como // sendo o cateto adjacente float cat_adjacente = pow((largura / 2.0), 2); // vamos tratar metade da altura do retângulo como // sendo o cateto oposto float cat_oposto = pow((altura / 2.0), 2); // obtemos a hipotenusa do triângulo retângulo que // extraímos a partir do retângulo informado pelo // usuário float hipotenusa = sqrt(cat_adjacente + cat_oposto); // para que o retângulo caiba no círculo, a hipotenusa que // obtemos não pode ser maior que o raio do círculo return raio >= hipotenusa; } |
![]() |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |