Помощ за задачата " Ски почивка"
Здравейте, някой може ли да ми помогне, защото не ми дава повече от 40 от 100 в judge, а не мога да разбера къде греша? Задачата е "Ски почивка" в PB c++.
Ето и кода:
#include <iostream>
using namespace std;
int main()
{
int day;
string room, evalution;
cout.setf(ios::fixed);
cout.precision(2);
cin >> day >> room >> evalution;
double night = day - 1;
double sleep = 0;
if (room == "room") {
sleep = night * 18.00;
}
else if (room == "apartment") {
sleep = night * 25.00;
if (day < 10) {
sleep = sleep - 0.30 * sleep;
}
else if (day > 10 && day < 15) {
sleep = sleep - 0.35 * sleep;
}
else if (day > 15) {
sleep = sleep - 0.50 * sleep;
}
}
else if (room == "president") {
sleep = night * 25.00;
if (day < 10) {
sleep = sleep - 0.10 * sleep;
}
else if (day > 10 && day < 15) {
sleep = sleep - 0.15 * sleep;
}
else if (day > 15) {
sleep = sleep - 0.20 * sleep;
}
}
if (evalution == "positive") {
sleep = sleep + 0.25 * sleep;
cout << sleep;
}
else if (evalution == "negative") {
sleep = sleep - 0.10 * sleep;
cout << sleep;
}
return 0;
}
Благодаря, сега изчислява правилно, но като стигна до писане на голям текст като: "room for one person" ми изчислява веднага 0,0. Как да го оправя?
Здравей,
използвай getline() при четенето на входните данни. Например така :
Ако се затрудняваш, прегледай това решение.
Поздрави :)