網站首頁 編程語言 正文
阿姆斯特朗數
阿姆斯特朗數是一個數字,等于每個數字的冪乘以總位數。 例如,諸如0、1、153、370、371和407、1634、8208、9474的數字是阿姆斯特朗數。
例如:
-
371 為3位數, 則用每位數的3次方
(3 * 3 * 3)=27
(7 * 7 * 7)=343
(1 * 1 * 1) =1
總數: 27+343+1=371
判斷數字是否屬于阿姆斯特朗數?
static void Main(string[] args) { int i = 0; int digitCount = 0; /* * 這里我們只測試int類型的最大值區間(<2,147,483,647)的結果, * 所以我們定義的長度為0 */ int[] digitArray = new int[10]; double sum = 0; Console.Write("請輸入驗證的數字 : "); //1.輸入數字 int number = int.Parse(Console.ReadLine()); //2.用臨時變量保存該數字 int temporaryNumber = number; //3.保存數字的總數以及每個數字存儲在數字數組中 while (number > 0) { digitArray[i++] = number % 10; number = number / 10; digitCount++; } //4.計算結果 for (i = 0; i < digitCount; i++) //計算數字的次數冪 sum += Math.Pow(digitArray[i], digitCount); //5.判斷結果 if (sum == temporaryNumber) Console.WriteLine($"{temporaryNumber} 屬于阿姆斯特朗數"); else Console.WriteLine($"{temporaryNumber} 不屬于阿姆斯特朗數"); Console.ReadLine(); }
測試輸出結果:
獲取某個區間的所有阿姆斯特朗數
static void Main(string[] args) { Console.Write("輸入起始數字 : "); int StartNumber = int.Parse(Console.ReadLine()); Console.Write("輸入結束數字 : "); int EndNumber = int.Parse(Console.ReadLine()); Console.WriteLine($"阿姆斯特朗數區間為: {StartNumber} ~ {EndNumber} 的結果為 : "); for (int i = StartNumber; i <= EndNumber; i++) { if (IsArmstrongNumber(i)) Console.WriteLine(i); } Console.ReadLine(); } static bool IsArmstrongNumber(int number) { int sum = 0; int temporaryNumber = number; int temp = 0; int length = number.ToString().Length; while (number != 0) { temp = number % 10; number = number / 10; sum += (int)Math.Pow(temp, length); } if (sum == temporaryNumber) return true; else return false; }
測試輸出結果:
原文鏈接:https://www.cnblogs.com/zh7791/p/14714786.html
相關推薦
- 2022-10-27 React事件處理和表單的綁定詳解_React
- 2024-03-10 @Controller、@Service和@Repository注解詳解
- 2022-08-03 GoFrame框架使用避坑指南和實踐干貨_Golang
- 2022-12-11 C語言冷知識之預處理字符串操作符詳解_C 語言
- 2022-03-30 jupyter?notebook使用argparse傳入list參數_python
- 2022-05-13 c++中文字符匹配,但不匹配中文標點的完美解決方案。
- 2022-04-23 Tooltip 組件:根據內容是否溢出判斷是否顯示 Tooltip
- 2022-12-05 關于EF的Code?First的使用以及踩坑記錄_實用技巧
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支