кодесурса
«C

Упражнения C: совершенные числа в заданном диапазоне

script1adsense2code
script1adsense3code

Функция C: Упражнение-10 с решением

Напишите программу на C для печати всех совершенных чисел в заданном диапазоне, используя функцию.

Иллюстрированная презентация:

«C

Пример решения:

Код C:

#include <stdio.h>
 /* Function declarations */
int checkPerfect(int n1);
void PerfectNumbers(int stLimit, int enLimit);
int main()
{
    int stLimit, enLimit;
	printf("\n\n Function : perfect numbers in a given range :\n");
	printf("--------------------------------------------------\n");     
    printf(" Input lowest search limit of perfect numbers : ");
    scanf("%d", &stLimit);
    printf(" Input highest search limit of  perfect numbers : ");
    scanf("%d", &enLimit);
     
    printf("\n The perfect numbers between %d to %d are : \n", stLimit, enLimit);
    PerfectNumbers(stLimit, enLimit);
    printf("\n\n"); 
    return 0;
}
// Checks whether the given number is perfect or not.
int checkPerfect(int n1)
{
    int i, sum;
     
    sum = 0;
    for(i=1; i<n1; i++)
    {
        if(n1 % i == 0)
        {
            sum += i;
        }
    }
// If sum of proper positive divisors equals to given number 
// then the number is perfect number
    if(sum == n1)
        return 1;
    else
        return 0;
}
void PerfectNumbers(int stLimit, int enLimit)
{
    /* print perfect numbers from start to end */
    while(stLimit <= enLimit)
    {
        if(checkPerfect(stLimit))
        {
            printf(" %d  ", stLimit);
        }
        stLimit++;
    }   
}

Пример вывода:

 Функция: совершенные числа в заданном диапазоне:
--------------------------------------------------
 Введите самый низкий предел поиска совершенных чисел: 1
 Введите максимальный предел поиска совершенных чисел: 100
 Идеальные числа от 1 до 100:
 6 28

Блок - схема:

«Блок-схема:

Редактор кода программирования C:

Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.

Предыдущий: Напишите программу на C, чтобы проверить Армстронга и совершенные числа, используя функцию.
Далее: Напишите программу на C, чтобы проверить, являются ли две данные строки анаграммой.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code