а) Если результат операции равен 0, то число чётное, в ином случае нечётное.
#include <iostream>
using namespace std;
int main()
{
int a;
cout << "input number: ";
cin >> a;
if(a % 2 == 0){
cout << "number " << a << " is even" << endl;
return 0;
}
else if(a % 2 == 1){
cout << "number " << a << " is not even" << endl;
return 0;
}
}
Проверка:
input number: 5
number 5 is not even
input number: 4
number 4 is even
б) (int)(a/2) предполагает, что при делении a на 2 будет отбрасываться дробная часть. То есть, если вы вводите число 3, то 3/2 = 1.5, 0.5 отбрасывается и получается 1, то есть условие не выполняется. Если же мы вводим чётное, то 4/2 = 2, условие выполняется.
В случае, когда скобка = true, то число чётное, когда false = нечётное.
Answers & Comments
Verified answer
[Код написан и выполнен на языке C++]
а) Если результат операции равен 0, то число чётное, в ином случае нечётное.
#include <iostream>
using namespace std;
int main()
{
int a;
cout << "input number: ";
cin >> a;
if(a % 2 == 0){
cout << "number " << a << " is even" << endl;
return 0;
}
else if(a % 2 == 1){
cout << "number " << a << " is not even" << endl;
return 0;
}
}
Проверка:
input number: 5
number 5 is not even
input number: 4
number 4 is even
б) (int)(a/2) предполагает, что при делении a на 2 будет отбрасываться дробная часть. То есть, если вы вводите число 3, то 3/2 = 1.5, 0.5 отбрасывается и получается 1, то есть условие не выполняется. Если же мы вводим чётное, то 4/2 = 2, условие выполняется.
В случае, когда скобка = true, то число чётное, когда false = нечётное.
#include <iostream>
using namespace std;
int main()
{
double a;
cout << "input number: ";
cin >> a;
if (int(a / 2) == a / 2) {
cout << "number " << a << " is even" << endl;
}
else {
cout << "number " << a << " is not even" << endl;
}
}
Проверка:
input number: 555
number 555 is not even
input number: 144
number 144 is even