C程序檢查強數
給定一個數字'n',我們需要檢查給定的數字是否為強數。
強數是指其所有數字的階乘總和等於數字'n'。階乘是指將小於該數字的所有數字(包括該數字)相乘的結果,以!(感嘆號)表示。例如:4! = 4x3x2x1 = 24。
因此,要確定一個數字是否是強數,我們需要提取數字的每一位,例如數字為145,則我們需要提取1、4和5,然後我們將計算每個數字的階乘,即1! = 1,4! = 24,5! = 120。
現在我們將1 24 120相加,得到145,與給定的輸入完全相同,因此我們可以說這個數字是強數。
範例
Input: n = 124 Output: No it is not a strong number Explanation: 1! + 2! + 4! = 27 which is not equal to n i.e, 124 Input: n = 145 Output: Yes it is a strong number Explanation: 1! + 4! + 5! = 145
下面使用的方法如下來解決問題 −
我們將−
- 從個位數開始取每個數字,並找到其階乘。
- 我們將這些數字的階乘相加。
- 將結果與原始數字進行比較,如果它們相等,則該數字是強數;否則該數字不是強數。
演算法
START In Function int factorial(int r) Step1 -> Initialize int fact and set as 1 Step2-> Loop while r>1 Set fact as fact * r Decremnet r by 1 End Loop Step 3-> Return fact End Function factorial In Function int check(int n) Step 1-> Initialize int temp, rem and result, set result as 0 Step 2-> Set temp as n Step 3-> Loop while temp Set rem as temp % 10 Set result as result + factorial(rem) Set temp as temp/10 End loop Step 4-> If result == n then, Return 1 Step 5-> Else Return 0 End function check In main(int argc, char const *argv[]) Step 1-> Initialise and set n as 145 Step 2->If check(n) is valid then, Print "Yes it is a strong number” Step 3-> Else Print "no it is not a strong number” STOP
範例
即時示範
#include <stdio.h> int factorial(int r) { int fact = 1; while(r>1) { fact = fact * r; r--; } return fact; } int check(int n) { int temp, rem, result = 0; temp = n; while(temp) { rem = temp % 10; result = result + factorial(rem); temp = temp/10; } if (result == n) return 1; else return 0; } int main(int argc, char const *argv[]) { int n = 145; if (check(n)) printf("Yes it is a strong number</p><p>"); else printf("no it is not a strong number</p><p>"); return 0; }
如果執行上述程式碼,將產生以下輸出 −
Yes it is a strong number
以上是C程序檢查強數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

給出以下是一個將羅馬數字轉換為十進制數字的C語言演算法:演算法步驟1-開始步驟2-在運行時讀取羅馬數字步驟3-長度:=strlen(roman)步驟4-對於i=0到長度-1 步驟4.1-switch(roman[i]) 步驟4.1.1-case'm': &nbs
![拼字檢查在團隊中不起作用[修復]](https://img.php.cn/upload/article/000/887/227/170968741326618.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
我們已經開始注意到,有時拼字檢查停止工作的團隊。拼字檢查是有效溝通的基本工具,任何對它的打擊都會對工作流程造成相當大的破壞。在本文中,我們將探討拼字檢查可能無法如預期運作的常見原因,以及如何將其恢復到先前的狀態。所以,如果拼字檢查在團隊中不起作用,請遵循本文中提到的解決方案。為什麼Microsoft拼字檢查不起作用? Microsoft拼字檢查無法正常運作可能有多種原因。這些原因包括不相容的語言設定、拼字檢查功能被停用、MSTeam或MSOffice安裝損壞等。另外,過時的MSTeams和MSOf

Windows11中如何檢查SSD運作狀況?對於其快速的讀取、寫入和存取速度,SSD正在迅速取代HDD,但即使它們更可靠,您仍然需要在Windows11中檢查SSD的運作狀況。怎麼去操作呢?本篇教學小編就來為大家分享一下方法吧。方法一:使用WMIC1、使用按鍵組合Win+R,鍵入wmic,然後按或按一下「確定」。 Enter2、現在,鍵入或貼上以下命令以檢查SSD運行狀況:diskdrivegetstatus如果您收到「狀態:正常」訊息,則您的SSD驅動器運行正

連結列表使用動態記憶體分配,即它們相應地增長和收縮。它們被定義為節點的集合。這裡,節點有兩個部分,即資料和鏈路。資料、連結和鍊錶的表示如下-鍊錶的類型鍊錶有四種類型,如下:-單鍊錶/單鍊錶雙/雙向鍊錶循環單鍊錶循環雙鍊錶我們使用遞歸方法求鍊錶長度的邏輯是-intlength(node *temp){ if(temp==NULL) returnl; else{&n

rename函數將檔案或目錄從舊名稱變更為新名稱。此操作類似於移動操作。因此,我們也可以使用此rename函數來移動檔案。此函數存在於stdio.h庫頭檔中。 rename函數的語法如下:intrename(constchar*oldname,constchar*newname);rename()函數的函數它接受兩個參數。一個是oldname,一個是newname。這兩個參數都是指向常數字元的指針,用於定義檔案的舊名稱和新名稱。如果檔案重新命名成功,則傳回零;否則,傳回非零整數。在重新命名操作期間

雙曲函數是使用雙曲線而不是圓定義的,與普通三角函數相當。它從提供的弧度角傳回雙曲正弦函數中的比率參數。但要做相反的事,或者換句話說。如果我們想要根據雙曲正弦值計算角度,我們需要像雙曲反正弦運算一樣的反雙曲三角運算。本課程將示範如何使用C++中的雙曲反正弦(asinh)函數,並使用雙曲正弦值(以弧度為單位)計算角度。雙曲反正弦運算遵循下列公式-$$\mathrm{sinh^{-1}x\:=\:In(x\:+\:\sqrt{x^2\:+\:1})},其中\:In\:是\:自然對數\:(log_e\:k)

請考慮下表了解不同公司的資格標準-CGPA的中文翻譯為:績點平均成績符合條件的公司大於或等於8谷歌、微軟、亞馬遜、戴爾、英特爾、Wipro大於或等於7教程點、accenture、Infosys 、Emicon、Rellins大於或等於6rtCamp、Cybertech、Skybags、Killer、Raymond大於或等於5Patronics、鞋子、NoBrokers讓我們進入java程式來檢查tpp學生參加面試的資格。方法1:使用ifelseif條件通常,當我們必須檢查多個條件時,我們會使用

Golang中如何檢查字串是否以特定字元開頭?在使用Golang程式設計時,經常會遇到需要檢查一個字串是否以特定字元開頭的情況。針對這項需求,我們可以使用Golang中的strings套件所提供的函數來實現。接下來將詳細介紹如何使用Golang檢查字串是否以特定字元開頭,並附上具體的程式碼範例。在Golang中,我們可以使用strings套件中的HasPrefix
