Control C301C

Donat un natural n ≥ 1, sigui s(n) la suma dels seus divisors tret d’ell
mateix. Diem que n ≥ 3 és un nombre popiropis si
n = s(n − 2) + s(n) + s(n + 2). Diem que n ≥ 3 és un nombre k-popiropis
si n * k = s(n − 2) + s(n) + s(n + 2) per a un enter k ≥ 2.

Per exemple, el nombre 133 és popiropis, ja que s(131) = 1, s(133) = 27
i s(135) = 105. D’altra banda, 132 és 3-popiropis, perquè
s(130) + s(132) + s(134) = 396 = 132 * 3.

Feu un programa que, per a cada natural donat, escrigui si és popiropis,
si és k-popiropis (i amb quin valor de k), o si no és res.

Entrada

L’entrada és una seqüència de naturals n ≥ 3.

Sortida

Escriviu una línia per a cada n, indicant de quina classe és: popiropis,
k-popiropis, o no res.

Observació

El vostre programa ha d’implementar i fer servir la funció

        int suma_divisors(int n);

que, donat un natural |n| diferent de 0, retorna la suma dels seus
divisors (tret d’ell mateix).

Informació del problema

Autoria: Professorat de P1

Generació: 2026-01-25T11:29:29.723Z

© Jutge.org, 2006–2026.
https://jutge.org
