Un natural més gran que zero és un nombre de Hamming si els seus únics divisors primers són 2, 3 o 5. Els dotze primers nombres de Hamming són 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15 i 16. D’altra banda, ni el 42 ni el 97 no són nombres de Hamming: 42 és divisible per 7, i 97 és un primer més gran que 5.
Feu un programa que escrigui els primers nombres de Hamming per a diferents valors de .
El vostre programa ha d’incloure i usar la funció
bool es_de_hamming(int x);
que indica si un natural |x| més gran que zero és un nombre de Hamming o no.
L’entrada és una seqüència de naturals.
Per a cada natural de l’entrada cal escriure, en una línia i separats per comes, els primers nombres de Hamming en ordre creixent.
Hi ha maneres astutes de generar ordenadament els primers nombres de Hamming. Aquí no us demanem de descobrir-les: senzillament, implementeu un algorisme raonable.
Input
12 2 6 0 1
Output
1,2,3,4,5,6,8,9,10,12,15,16 1,2 1,2,3,4,5,6 1