Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program C untuk menyemak sama ada nombor boleh dibahagi dengan hasil tambah digitnya

Program C untuk menyemak sama ada nombor boleh dibahagi dengan hasil tambah digitnya

王林
王林ke hadapan
2023-08-30 16:05:081503semak imbas

Program C untuk menyemak sama ada nombor boleh dibahagi dengan hasil tambah digitnya

Diberi nombor n, kita perlu menyemak sama ada jumlah digitnya boleh dibahagi dengan n. Untuk mengetahui, kita perlu menambah semua nombor bermula dari digit satu dan kemudian membahagikan jumlah akhir dengan nombor itu.

Sebagai contoh, kita mempunyai nombor "521", dan kita perlu mencari jumlah digitnya, iaitu, "5 + 2 + 1 = 8", tetapi 521 tidak boleh dibahagikan dengan 8, dan bakinya tidak 0.

Contoh lain, "60", hasil tambah digitnya ialah "6 + 0 = 6", 6 boleh membahagi 60, dan bakinya ialah 0. .

Dapatkan input

Dapatkan setiap nombor bermula dari digit satu dan tambahkannya kepada pembolehubah jumlah dengan nilai awal sifar

Bahagikan input dengan jumlah nombor

Kembalikan hasilnya
  • Algorithm
    Input: 55
    Output: No
    Explanation: 5+5 = 10; 55 not divisible by 10
    Input: 12
    Output: Yes
    Explanation: 1+2 = 3; 12 is divisible by 3
  • Contoh
  • Demonstrasi
  • In function int isDivisible(long int num)
       Step 1-> Declare and initialize temp = num, sum = 0
       Step 2-> Loop While num
          Declare and initialize k as num % 10
       Set sum as sum + k
          Set num as num / 10
       End Loop
       Step 3-> If temp % sum == 0 then,
          Return 1
       Step 4-> Return 0
          End function
    In main()
       Step 1-> Declare and initialize num as 55
       Step 2-> If isDivisible(num) then,
          Print "yes "
       Step 3-> Else
    Print "no "
  • Output
Jika anda menjalankan kod di atas, output berikut akan dihasilkan −

#include <stdio.h>
// This function will check
// whether the given number is divisible
// by sum of its digits
int isDivisible(long int num) {
   long int temp = num;
   // Find sum of digits
   int sum = 0;
   while (num) {
      int k = num % 10;
      sum = sum + k;
      num = num / 10;
   }
   // check if sum of digits divides num
   if (temp % sum == 0)
      return 1;
      return 0;
}
int main() {
   long int num = 55;
   if(isDivisible(num))
      printf("yes</p><p>");
   else
      printf("no</p><p>");
      return 0;
}

Atas ialah kandungan terperinci Program C untuk menyemak sama ada nombor boleh dibahagi dengan hasil tambah digitnya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam