Lista de probleme 6

Filtrare

Pentru un număr natural x notăm cu S suma divizorilor săi diferiți de x. Dacă S este strict mai mică decât x, atunci x se numește număr deficient, dacă S este egală cu x, atunci x se numește număr perfect, iar dacă S este strict mai mare decât x, atunci x se numește număr abundent.

Se dă un șir de n numere naturale. Să se calculeze câte numere sunt deficiente, perfecte, respectiv abundente.

#1438 Razboi

În Regatul Numerelor, a început războiul civil. Se dau n soldați, reprezentați prin n numere naturale, nu neapărat distincte. Cei n soldați sunt recrutați în două batalioane adverse, după o lege de recrutare. Această lege are un număr asociat, care este egal cu 1 sau 2. Dacă legea este 1, atunci soldații care au ultima cifră egală cu 0, 2, 4, 6 și 8 sunt recrutați de primul batalion, iar ceilalți de cel de-al doilea. Dacă legea e 2, atunci soldații care au suma divizorilor număr par sunt recrutați de primul batalion, iar restul de cel de-al doilea.

Dându-se n, numărul de soldați, L, legea de recrutare, și identificatorii celor n soldați, să se afișeze numărul soldaților din primul, respectiv al doilea batalion.

#1517 Clatite

Arpsod adoră două lucruri: matematica și clătitele bunicii sale. Într-o zi, aceasta s-a apucat să prepare clătite. Arpsod mănâncă toate clătitele începând de la a N-a clătită preparată, până la a M-a clătită preparată (inclusiv N și M). Pentru că el vrea să mănânce clătite cu diferite umpluturi și-a făcut următoarea regulă:

“Dacă numărul de ordine al clătitei este prim atunci aceasta va fi cu ciocolată. Dacă numărul de ordine este pătrat perfect sau cub perfect aceasta va fi cu gem. Dacă suma divizorilor numărului este egală cu însuși numărul de ordine atunci aceasta va fi cu înghețată. (se iau în considerare toți divizorii în afară de numărul în sine, inclusiv 1).

În cazul în care o clătită îndeplinește simultan mai multe condiții, se respectă prioritatea sortimentelor: ciocolată > gem > înghețată.
Dacă niciuna dintre condițiile de mai sus nu este îndeplinită, pentru cele cu numărul de ordine par, clătita va fi cu zahar, iar pentru numărul de ordine impar, clătita va fi simplă.”

Cunoscându-se N și M, numere naturale, să se determine câte clătite a mâncat Arpsod în total și numărul de clătite din fiecare tip.

Să se scrie o funcție C++ care să determine suma divizorilor unui număr natural transmis ca parametru. Funcția va returna rezultatul.

Să se scrie o funcție C++ care să determine suma divizorilor unui număr natural transmis ca parametru. Funcția întoarce rezultatul prin intermediul unui parametru de ieşire.

#800 Perfect C++

Un număr natural nenul se numește perfect dacă este egal cu suma divizorilor săi naturali strict mai mici decât el.

Să se scrie o funcție C++ care, pentru doi parametri, a și b, afișează pe ecran, separate prin câte un spațiu, în ordine descrescătoare, toate numerele perfecte din intervalul [a,b]. Dacă în interval nu există astfel de numere, subprogramul afișează pe ecran mesajul nu exista.