Escreva um programa que leia 5 números inteiros positivos (utilize uma
função que leia esse número e verifique se ele é positivo). Para cada número
informado escrever a soma de seus divisores (exceto ele mesmo). Utilize a
função SomaDivisores para obter a soma.
Nome: SomaDivisores
Descrição: Calcula a soma dos divisores do número informado (exceto ele
mesmo).
Entrada: Um número inteiro e positivo. Saída: A soma dos divisores.
Exemplo: Para o valor 8: 1+2+4 = 7
Respostas
respondido por:
2
*/
#include <stdio.h>
int N, acm;
int SomaDivisores(int n)
{
if (n == 1)
{
return n;
}
else
{
if (n % 2 == 0)
{
acm = acm + (n / 2);
}if (n % 3 == 0)
{
acm = acm + (n / 3);
}if (n % 5 == 0)
{
acm = acm + (n / 5);
}
acm = acm + SomaDivisores(n - 1);
return acm;
}
}
int main(void)
{
int i;
for (i = 0; i < 5; i++)
{
printf("Insira um numero inteiro positivo: ");
scanf("%d", &N);
printf("A soma dos divisores do numero informado e: %d\n", acm);
SomaDivisores(N, acm);
}
return 0;
}
Perguntas similares
2 anos atrás
2 anos atrás
2 anos atrás
5 anos atrás
5 anos atrás
5 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás