Ц Програм за проверу основног или Армстронгова броја помоћу кориснички дефинисане функције

У овом примеру ћете научити да проверавате да ли је цели број прост број или Армстронг или обоје тако што ћете креирати две одвојене функције.

Да бисте разумели овај пример, требало би да имате знање о следећим темама програмирања на Ц:

  • Ц за Лооп
  • Ц вхиле и уради … вхиле Лооп
  • Ц преломи и настави
  • Ц Функције
  • Типови кориснички дефинисаних функција у програмирању на језику Ц.

У овом програму, два корисник-дефинисане функције checkPrimeNumber()и checkArmstrongNumber()настају.

На checkPrimeNumber()функција враћа 1ако је број ушао корисник је прост број. Слично томе, checkArmstrongNumber()функција се такође враћа 1ако је број који је унео корисник Армстронгов број.

Посетите ове странице да бисте сазнали да ли је неки број

  • прост број или не
  • Армстронгов број или не

Пример: Проверите Приме и Армстронг

 #include #include int checkPrimeNumber(int n); int checkArmstrongNumber(int n); int main() ( int n, flag; printf("Enter a positive integer: "); scanf("%d", &n); // check prime number flag = checkPrimeNumber(n); if (flag == 1) printf("%d is a prime number.", n); else printf("%d is not a prime number.", n); // check Armstrong number flag = checkArmstrongNumber(n); if (flag == 1) printf("%d is an Armstrong number.", n); else printf("%d is not an Armstrong number.", n); return 0; ) // function to check prime number int checkPrimeNumber(int n) ( int i, flag = 1, squareRoot; // computing the square root squareRoot = sqrt(n); for (i = 2; i <= squareRoot; ++i) ( // condition for non-prime number if (n % i == 0) ( flag = 0; break; ) ) return flag; ) // function to check Armstrong number int checkArmstrongNumber(int num) ( int originalNum, remainder, n = 0, flag; double result = 0.0; // store the number of digits of num in n for (originalNum = num; originalNum != 0; ++n) ( originalNum /= 10; ) for (originalNum = num; originalNum != 0; originalNum /= 10) ( remainder = originalNum % 10; // store the sum of the power of individual digits in result result += pow(remainder, n); ) // condition for Armstrong number if (round(result) == num) flag = 1; else flag = 0; return flag; )

Оутпут

Унесите позитиван цели број: 407 407 није прост број. 407 је Армстронгов број.

Занимљиви Чланци...