Problem
Whole numbers divisible by 2 are even; other whole numbers are odd. A number with a fractional part is neither. Zero is even, and negative integers follow the same rule.
Implement number_parity(number).
Input
number: The number to classify.
Output
Return odd, even, or neither as lowercase text.
Einschränkungen
−1,000,000 ≤ number ≤ 1,000,000. The input is finite and has at most two decimal places.
Beispiele
Eingabe:
number = 14
Erwartete Ausgabe:
expected = "even"
Eingabe:
double number = 14;
Erwartete Ausgabe:
std::string expected = "even";
Eingabe:
double number = 14;
Erwartete Ausgabe:
string expected = "even";
Erläuterung
14 = 2 × 7, so it is divisible by 2.
Eingabe:
number = 3.5
Erwartete Ausgabe:
expected = "neither"
Eingabe:
double number = 3.5;
Erwartete Ausgabe:
std::string expected = "neither";
Eingabe:
double number = 3.5;
Erwartete Ausgabe:
string expected = "neither";
Erläuterung
3.5 has a fractional part, so it is neither an odd nor an even integer.
So gehst du vor
Versuch es zuerst allein und öffne dann einen Hinweis nach dem anderen.
Hinweis 1
First decide whether the input is a whole number, since fractional values are neither odd nor even.
Hinweis 2
For whole numbers, parity depends on whether division by 2 leaves a remainder.
Hinweis 3
Remember that zero is even, and negative integers follow the same rule as positive ones.
Erwartete Komplexität
O(1) time, O(1) extra space
Referenzen
Diese Aufgabe wurde für CodeUtility angepasst. Beachte die oben genannten Vorgaben und Einschränkungen.