- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
int IsEven(long long int number){
if (number == 0) return 0;
long long int loc_num = 0;
update:
if (number == loc_num+1) {return 1;
} else if (number == (loc_num+1)*(-1)) { return 1;
} else {
if (number == loc_num+2) {return 0;
} else if (number == (loc_num+2)*(-1)) { return 0;
} else {
if (number == loc_num+3) {return 1;
} else if (number == (loc_num+3)*(-1)) { return 1;
} else {
if (number == loc_num+4) {return 0;
} else if (number == (loc_num+4)*(-1)) { return 0;
} else {
if (number == loc_num+5) {return 1;
} else if (number == (loc_num+5)*(-1)) { return 1;
} else {
if (number == loc_num+6) {return 0;
} else if (number == (loc_num+6)*(-1)) { return 0;
} else {
if (number == loc_num+7) {return 1;
} else if (number == (loc_num+7)*(-1)) { return 1;
} else {
if (number == loc_num+8) {return 0;
} else if (number == (loc_num+8)*(-1)) { return 0;
} else {
if (number == loc_num+9) {return 1;
} else if (number == (loc_num+9)*(-1)) { return 1;
} else {
if (number == loc_num+10) {return 0;
} else if (number == (loc_num+10)*(-1)) { return 0;
} else {
loc_num+=10;
goto update;
}
}
}
}
}
}
}
}
}
}
}
Myxa 14.11.2024 16:36 # 0
Myxa 14.11.2024 16:45 # 0
1. Называется IsEven, а ненулевое зачение возвращает для нечётных.
2. Куча мест с умножением на -1, хотя модуль можно было извлечь сразу.
3. Ну и сама идея цикла, хотя нас интересует только последняя цифра.
Пытаюсь придумать, где можно было бы применить похожий алгоритм, но мне кажется, что везде хватило бы и остатка от деления.
guest6 14.11.2024 16:44 # 0