Mostrar els nombres d'Harshad d'un flux en ordre invers V36562


Statement
 

pdf   zip

Un nombre enter positiu nn es considera un nombre d’Harshad si és divisible per la suma de les seves xifres. Formalment: nmodS(n)=0n \mod S(n) = 0 on S(n)S(n) representa la suma de les xifres de nn.

Per exemple, 1818 és un nombre d’Harshad, ja que 1818 és divisible per 9(1+8)9 (1 + 8).

Fes un programa que donat un flux d’enters majors que 0 acabat en 0 mostri:

  • Els nombres d’Harshad del flux en ordre invers.

  • La mida de la subseqüència consecutiva de nombres d’Harshad més gran.

IMPORTANT! Has d’implementar i usar una funció que donat un nombre natural retorni cert si el nombre donat és un nombre d’Harshad i fals en cas contrari.

Entrada

L’entrada consisteix en un flux d’enters majors que 0 acabat en 0.

Sortida

Mostra:

  • Els nombres d’Harshad del flux en ordre invers. Si el flux no té cap nombre d’Harshad s’ha d’escriure "Cap".

  • La mida de la subseqüència consecutiva de nombres d’Harshad més gran.

Per obtenir més detalls sobre la sortida consulta els jocs de proves públics.

Public test cases
  • Input

    30 20 12 40 10 1 1010 51 23 45 26 34 36 141 0
    

    Output

    36 45 1010 1 10 40 12 20 30
    7
    
  • Input

    2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 0
    

    Output

    7 5 3 2
    4
    
  • Input

    7732 4321 99257 2486 1263 90205 5941 8413 52381 6610 137 20201 0
    

    Output

    Cap
    0
    
  • Information
    Author
    Bernardino Casas
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++