Задача ** C++. Для прямоугольной комнаты размером W x H метров нужно закупить линолеум. В...

0 голосов
67 просмотров

Задача на C++.

Для прямоугольной комнаты размером W x H метров нужно закупить линолеум. В магазине линолеум продают рулонами; вам известно количество квадратных метров линолеума в одном рулоне и цена рулона.

Требуется определить, хватит ли имеющейся суммы денег на покупку линолеума.

Линолеум также может быть закуплен у иностранного поставщика, поэтому требуется узнать его стоимость в иностранной валюте, курс которой по отношению к рублю известен.

Входные данные
Первая строка содержит два целых числа W и H (1 <= W, H <= 1000) — соответственно длину и ширину комнаты в метрах.<br>
Вторая строка содержит два целых числа K и P (1 <= K, P <= 1000) — соответственно количество квадратных метров линолеума в одном рулоне и цену одного рулона в рублях.<br>
Третья строка содержит одно целое число M (1 <= M <= 10^6) — количество имеющихся денег в рублях.<br>
Четвёртая строка содержит одно вещественное число T (0 < T <= 10) — стоимость рубля в иностранной валюте.<br>
Выходные данные
В первой строке выведите два целых числа — количество рулонов линолеума, которое потребуется приобрести, и общую стоимость линолеума в рублях.

Во второй строке выведите "YES" (без кавычек), если имеющихся денег хватит на покупку линолеума, иначе выведите "NO" (без кавычек).

В третьей строке выведите одно вещественное число с четырьмя знаками после запятой — общую стоимость линолеума в иностранной валюте.


Информатика (12 баллов) | 67 просмотров
Дан 1 ответ
0 голосов

#include
#include      // std::setprecision

int main()
{
  unsigned int W,H,K,P;  
  unsigned long M;
  float T;
  std::cin >> W >> H >> K >> P >> M >> T;
  unsigned int n = (W*H);
  std::cout << (n = ((n / K) + !(!(n % K)))) << "  ";<br>  std::cout << (n = (n*P)) << std::endl;<br>  std::cout << ((M-n > 0) ? "YES" : "NO") << std::endl;<br>  std::cout << std::setprecision(4) << (float(n) / T) << std::endl;<br>
  return 0;
}

(3.2k баллов)