每天一道C语言编程练习(5):尼科彻斯定理

这篇具有很好参考价值的文章主要介绍了每天一道C语言编程练习(5):尼科彻斯定理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

题目描述

 验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。

输入格式

任一正整数

输出格式

该数的立方分解为一串连续奇数的和

样例输入

13

样例输出

13*13*13=2197=157+159+161+163+165+167+169+171+173+175+177+179+181

代码如下,如有错误请大佬们不吝赐教!💖💖💖

这里用数学运算的思想,设第一个奇数为x,总共有n个连续奇数,则有:

每天一道C语言编程练习(5):尼科彻斯定理,编程训练,c语言,开发语言

先把以 2为首的连续n-1个偶数相加

即:

 for(int i=0;i<n-1;i++)
    {
        sumtwo+=m;
        m+=2;
    }

再利用简单的数学运算得到第一个奇数x,即这里的p

     p=(sum-sumtwo)/n;

最后进行循环输出,即

  for(int i=0;i<n;i++)
    {
        if(i<n-1)
        {
            printf("%d+",arr[i]);
        }
        else
            printf("%d",arr[i]);
    }

得到最终代码如下: 文章来源地址https://www.toymoban.com/news/detail-574288.html

#include<stdio.h>
#include<math.h>
int main()
{
    int n;
    scanf("%d",&n);
    int arr[n];
    int sum=pow(n,3);
    int sumtwo=0;
    int m=2;
    int p;
    printf("%d*%d*%d=%d=",n,n,n,sum);
    for(int i=0;i<n-1;i++)
    {
        sumtwo+=m;
        m+=2;
    }
    p=(sum-sumtwo)/n;
    arr[0]=p;
    for(int i=0;i<n;i++)
    {
        arr[i+1]=arr[i]+2;
    }
    for(int i=0;i<n;i++)
    {
        if(i<n-1)
        {
            printf("%d+",arr[i]);
        }
        else
            printf("%d",arr[i]);
    }
}

到了这里,关于每天一道C语言编程练习(5):尼科彻斯定理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C语言编程实现,计算每天进步一点点一年后的效果

    本来的基数为1,如果好好学习时能力值相比前一天提高1%,当放任时相比前一天下降1%。1年(365天)后的效果相差多少呢? 原基数为1,努力一天进步1%,效果1*(1+0.01),努力两天是在前一天的基础上进步1%,结果是1*(1+0.01)*(1+0.01),一年后天天向上的力量是(1+0.01)的365次方。

    2024年02月11日
    浏览(54)
  • 【C语言】编程练习(四)

    写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和 例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19 输入:1729,输出:19 编写一个函数 reverse_string(char * string)(递归实现) 实现 :将参数字符串中的字符反向排列,不是逆序打印。 **要求:**不能使用

    2024年02月08日
    浏览(37)
  • 【C语言】编程练习(二)

    需要多组输入 判断是否是字母 使用getchar()函数清空内存中的空格 根据ASCII码表来判断 判断日期是双11还是双12 双11打7折 双12打8折 一行输入4个数 衣服价格 月份 日期 优惠卷 一张优惠卷减50 花钱不可能为负数 保留两位小数 金额不能为负数,为负数这直接为0; 输出金额注意

    2024年02月07日
    浏览(40)
  • c语言编程练习题:7-84 连续因子

    代码来自:https://yunjinqi.top/article/209

    2024年02月07日
    浏览(71)
  • 【PTA-C语言】编程练习4 - 数组Ⅰ

    如果代码存在问题,麻烦大家指正 ~ ~ 有帮助麻烦点个赞 ~ ~ 作者 翁恺 单位 浙江大学 班级里要搞智力竞赛啦!同学们都踊跃参加。进入最后决赛的是10个同学,随着一道道题目的出示,有时是1号选手得分,有时是5号选手得分,每次答对者得10分,最后结果如何呢? 输入格式:

    2024年02月03日
    浏览(42)
  • 【PTA-C语言】编程练习4 - 数组Ⅱ

    如果代码存在问题,麻烦大家指正 ~ ~ 有帮助麻烦点个赞 ~ ~ 作者 李民 单位 武汉理工大学 本题模拟2048游戏的规则,提供4X4个格子,输入每个格子的初始值(空白格子值为0),玩家选择向下移动,所有数字向下靠拢,相同的数字相撞时会合并。移动结束后,输出合并后的数值

    2024年02月03日
    浏览(42)
  • 【PTA-C语言】编程练习3 - 循环结构Ⅱ

    如果代码存在问题,麻烦大家指正 ~ ~ 有帮助麻烦点个赞 ~ ~ 给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。 输入格式: 输入在一行中给出不超过9的正整数a和n。 输出格式: 在一行中按照“s = 对应的和”的格式输出。 输入样例: 输出样例:

    2024年02月03日
    浏览(50)
  • C语言编程练习(经过确定分钟后,计算现在的时间)

    题目是在某大学教育平台上听的一道题,但是没有答案。自己琢磨的 题目大概意思:现在是11:20,经过110分钟,是几点几分? 首先贴上老师的解题思路:   解题思路:首先将目前时间 11:20分为两个部分,如何分开两部分? 1. 1120/100=11(c语言两个整数相除 结果是整数);1120%100

    2023年04月24日
    浏览(53)
  • HJ76 尼科彻斯定理

    HJ76 尼科彻斯定理 m个连续奇数之和,所以我们只要求出连续奇数的第一位就能以此枚举所有奇数,连续奇数是一个等差数列。 S = m^3, n = m, d = 2    ===  a1 = m^2 - (m-1) 时间复杂度:O(n)

    2024年02月05日
    浏览(33)
  • C语言练习题解析:挑战与突破,开启编程新篇章!(2)

    💓博客主页:江池俊的博客 ⏩收录专栏:C语言刷题专栏 👉专栏推荐:✅C语言初阶之路 ✅C语言进阶之路 💻代码仓库:江池俊的代码仓库 🎉欢迎大家点赞👍评论📝收藏⭐ 🎈前言: 本专栏每篇练习将包括 5个选择题 + 2个编程题 ,将涵盖C语言的不同方面,包括基础语法、

    2024年02月10日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包