Cerința
Un număr natural se numește major impar dacă suma divizorilor săi proprii impari este strict mai mare decât suma divizorilor săi proprii pari. Divizorii proprii ai unui număr sunt divizorii săi naturali diferiți de 1
și de el însuși. Exemplu: 18
este număr major impar (divizorii săi proprii pari sunt 2
, 6
, cei impari 3
, 9
, iar 3 + 9 > 2 + 6
).
Subprogramul majImp
are doi parametri, a
și b
, prin care primește câte un număr natural (2 ≤ a ≤ b ≤ 10.000
). Subprogramul returnează cel mai mic număr major impar din intervalul [a,b]
, sau valoarea 0
, dacă în interval nu există un astfel de număr. Scrieţi în C/C++ definiţia completă a subprogramului.
Exemplu
Dacă a = 16
, b = 30
, atunci subprogramul returnează 18
.
Important
Soluția propusă va conține definiția subprogramului cerut. Prezența în soluție a altor instrucțiuni poate duce erori de compilare sau de execuție care vor avea ca efect depunctarea soluției.