当前位置: 首页 > news >正文

c语言水仙花,超简单讲解

效果

3或者大于3位数 每一位的位数次方相加等于 自身

例如

153

13 + 53 + 33 结果为1+125+27 =153

1634

  • 计算过程:
    • 14+64+34+44=1+1296+81+256=16341^4 + 6^4 + 3^4 + 4^4 = 1 + 1296 + 81 + 256 = 163414+64+34+44=1+1296+81+256=1634

过程

求得单独将所有位数的正数拎出来, 位次方后等于自身,打印

如何单拎出来所有位数?

11324

个位

直接模10

百/千/万

利用画个磨石刀方法

将其化为个位,然后模10

例如百位

11324/100 = 113

113 % 10 = 3 拿到百位数3

代码

写死位数

int i = 100;do {int a = i % 10;int b = i / 10 % 10;int c = i / 100;if (pow(a,3) + pow(b, 3) + pow(c, 3) == i){printf("%d\n", i);}i++;} while (i <= 999);

用户指定几位的水仙花

c语言版本

int main()
{int i;printf("请输入位数(3-9):");scanf_s("%d", &i);if (i < 3 || i>9) {printf("不能小于三,不能大于九\n");return 0;}int start = pow(10, i - 1);int end = pow(10, i) - 1;// 动态分配数组int* allNum = (int*)malloc(i * sizeof(int));if (allNum == NULL) {printf("内存分配失败\n");return 1; // 退出程序}for (int j = start; j < end; j++){int sum = 0;for (int k = 0; k < i; k++){allNum[k]=(j / (int)pow(10, k)) % 10;}for (int k = 0; k < i; k++){sum += (int)pow(allNum[k], i);}if (sum == j) {printf("找到水仙花了:%d\n", j);}}
}

java版本

 Scanner scanner = new Scanner(System.in);int i = scanner.nextInt();if (i < 3 || i > 9) {System.out.println("不能小于3,不能大于9");return;}int start = (int) Math.pow(10, i - 1);int end = (int) (Math.pow(10, i) - 1);for (int j = start; j < end; j++) {// 根据位数提取出每一位的数字,int[] allNum = new int[i];for (int k = 0; k < i; k++) {// 第n位就除以10的n-1次方,因为个位数不需要除以10,乘以1-1=0 10的零次方, 除以1即可,但是我们这里是从0开始符合存储数据下标,不用减去了allNum[k] = (int) ((j / Math.pow(10, k)) % 10);}// 收集好所有位数数据后依次位次方相加int sum = 0;for (int num : allNum) sum += (int) Math.pow(num, i);if (sum == j) {System.out.println("找到水仙花了:" + j);}}
http://www.lryc.cn/news/473343.html

相关文章:

  • Flutter 13 网络层框架架构设计,支持dio等框架。
  • Python小白学习教程从入门到入坑------第二十课 闭包修饰器(语法基础)
  • Vue+element-ui实现网页右侧快捷导航栏 Vue实现全局右侧快捷菜单功能组件
  • 如何配置,npm install 是从本地安装依赖
  • Python画图3个小案例之“一起看流星雨”、“爱心跳动”、“烟花绚丽”
  • Knife4j配置 ▎使用 ▎教程 ▎实例
  • 电子电气架构 --- 车载芯片现状
  • Unity 二次元三渲二
  • echart实现地图数据可视化
  • 网关三问:为什么微服务需要网关?什么是微服务网关?网关怎么选型?
  • Mybatis-plus解决兼容oracle批量插入
  • Kaggle竞赛——灾难推文分类(Disaster Tweets)
  • SC2601音频编解码器可pin to pin兼容ES8311
  • 通用AT指令
  • 二进制狼群算法
  • STL——list的介绍和使用
  • 二百七十六、ClickHouse——Hive和ClickHouse非常不同的DWS指标数据SQL语句
  • Elasticsearch Date类型,时间存储相关说明
  • mathorcup2024台风 我all in ai
  • android 10 后台启动activity
  • 文案创作新思路:Python与文心一言API的完美结合
  • CentOS 7 上安装 MySQL 8.0 教程
  • Chromium HTML5 新的 Input 类型url对应c++
  • java多线程编程(二)一一>线程安全问题, 单例模式, 解决程线程安全问题的措施
  • Leetcode 213. 打家劫舍 II 动态规划
  • 就业市场变革:AI时代,我们将如何评估人才?
  • 富格林:安全操作方式稳健出金
  • 早点包子店点餐的软件下载和点餐操作教程 佳易王餐饮点餐管理系统操作方法
  • uniapp一键打包
  • 什么是ksqlDB?流处理世界里的新范式