Я пытаюсь вывести "Rose"
, когда S
является положительным целым числом и >= 5
. Однако, когда я ввожу 5.1
, вывод все равно "Rose"
. Я не могу понять это :( [edit: я забыл сказать, что S - нечетное положительное число, поэтому я включаю S%2 == 1
в свой код]
#include <iostream>
using namespace std;
int main()
{
int S;
cout << "Please input the size of a rose: " << endl;
cin >> S;
if (S%2 == 1 && S >= 5 && sizeof(S) == 4) {
cout << "Rose" << endl;
}
else {
cout << "Invalid input size!" << endl;
}
}