Exercício "Piso da Escola" resolvido nas duas linguagens que mais costumo resolver! Veja!
Plataforma: URI (BEECROWD)
Problema: 2786
Enunciado:
O colégio pretende trocar o piso de uma sala de aula e a diretora aproveitou a oportunidade para passar uma tarefa aos alunos. A sala tem o formato de um retângulo de largura L metros e comprimento C metros, onde L e C são números inteiros. A diretora precisa comprar lajotas de cerâmica para cobrir todo o piso da sala. Seria fácil calcular quantas lajotas seriam necessárias se cada lajota fosse um quadrado de 1 metro de lado. O problema é que a lajota que a diretora quer comprar é um quadrado que possui 1 metro de diagonal, não de lado. Além disso, ela quer preencher o piso da sala com as diagonais das lajotas alinhadas aos lados da sala, como na figura.
A loja vai fornecer lajotas do tipo 1: inteiras; do tipo 2, que correspondem à metade das do tipo 1, cortadas ao longo da diagonal; e lajotas do tipo 3, que correspondem à metade do tipo 2. Veja os três tipos de lajotas na figura.
Está muito claro que sempre serão necessárias 4 lajotas do tipo 3 para os cantos da sala. A tarefa que a diretora passou para os alunos é calcular o número de lajotas dos tipos 1 e 2 que serão necessárias. Na figura, para L = 3 e C = 5, foram necessárias 23 do tipo 1 e 12 do tipo 2. Seu programa precisa computar, dados os valores de L e C, a quantidade de lajotas do tipo 1 e do tipo 2 necessárias.
Linguagens: C e C++
Solução:
Um exercício extremamente fácil. Após ler o enunciado, precisamos apenas ler dois valores e realizar as contas a seguir:
l x c + (l-1) x (c-1)
e
(l-1) + (l-1) + (c-1) + (c-1)
Imprima o resultado dessas duas contas e obtenha o aceite!
Código em C:
#include <stdio.h> int main() { int l, c; scanf("%i", &l); scanf("%i", &c); printf("%i\n", l * c + (l-1) * (c-1)); printf("%i\n", (l-1) + (l-1) + (c-1) + (c-1)); return 0; }
Código em C++:
#include <iostream> using namespace std; int main() { int l, c; cin >> l >> c; cout << l * c + (l-1) * (c-1) << endl; cout << (l-1) + (l-1) + (c-1) + (c-1) << endl; return 0; }
Nenhum comentário:
Postar um comentário