博客
关于我
《算法笔记》学习日记——5.1 简单数学
阅读量:211 次
发布时间:2019-02-28

本文共 1255 字,大约阅读时间需要 4 分钟。

为了解决这个问题,我们需要编写一个程序来判断一个整数是否为守形数。守形数的定义是它的平方的低位部分等于它本身。例如,25的平方是625,低位部分是25,因此25是一个守形数。

方法思路

  • 读取输入:我们需要读取多个整数,每个整数在2到100之间。
  • 计算平方:对于每个输入的整数,计算它的平方。
  • 获取平方后的末尾位数:找出输入整数的位数,然后从平方结果中截取相同位数的末尾部分。
  • 比较:将截取后的末尾部分与原数进行比较。如果相等,则输出"Yes!",否则输出"No!"。
  • 解决代码

    #include 
    #include
    #include
    #include
    #include
    using namespace std;int main() { int n; while (scanf("%d", &n) != EOF) { int d = 0; int temp = n; while (temp != 0) { d++; temp /= 10; } long long square = pow(n, 2); int mod = 1; for (int i = 0; i < d; i++) { mod *= 10; } long long last_part = square % mod; if (last_part == n) { printf("Yes!\n"); } else { printf("No!\n"); } memset(&n, 0, sizeof(int)); memset(&square, 0, sizeof(long long)); memset(&last_part, 0, sizeof(long long)); memset(&mod, 0, sizeof(int)); } return 0;}

    代码解释

  • 读取输入:使用scanf函数读取输入,直到EOF为止。
  • 计算位数:通过循环计算输入整数的位数。
  • 计算平方:使用pow函数计算输入整数的平方,并将结果存储在long long类型中以避免精度问题。
  • 截取末尾部分:计算一个模数mod,这个模数等于10的d次方。然后使用模运算截取平方结果的末尾d位。
  • 比较并输出结果:将截取后的末尾部分与原数比较,如果相等则输出"Yes!",否则输出"No!"。
  • 这个方法通过数学运算高效地解决了问题,确保了代码的正确性和效率。

    转载地址:http://sxtp.baihongyu.com/

    你可能感兴趣的文章
    Vue3+element plus+sortablejs实现table列表拖拽
    查看>>
    Nokia5233手机和我装的几个symbian V5手机软件
    查看>>
    Non-final field ‘code‘ in enum StateEnum‘
    查看>>
    none 和 host 网络的适用场景 - 每天5分钟玩转 Docker 容器技术(31)
    查看>>
    None还可以是函数定义可选参数的一个默认值,设置成默认值时实参在调用该函数时可以不输入与None绑定的元素...
    查看>>
    NoNodeAvailableException None of the configured nodes are available异常
    查看>>
    Vue.js 学习总结(16)—— 为什么 :deep、/deep/、>>> 样式能穿透到子组件
    查看>>
    nopcommerce商城系统--文档整理
    查看>>
    NOPI读取Excel
    查看>>
    NoSQL&MongoDB
    查看>>
    NoSQL介绍
    查看>>
    NoSQL数据库概述
    查看>>
    Notadd —— 基于 nest.js 的微服务开发框架
    查看>>
    NOTE:rfc5766-turn-server
    查看>>
    Notepad ++ 安装与配置教程(非常详细)从零基础入门到精通,看完这一篇就够了
    查看>>
    Notepad++在线和离线安装JSON格式化插件
    查看>>
    notepad++最详情汇总
    查看>>
    notepad++正则表达式替换字符串详解
    查看>>
    notepad如何自动对齐_notepad++怎么自动排版
    查看>>
    Notes on Paul Irish's "Things I learned from the jQuery source" casts
    查看>>