尼科彻斯定理-C语言/Java

描述        

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

        例如:

                1^3=1

                2^3=3+5

                3^3=7+9+11

                4^3=13+15+17+19

        输入一个正整数m(m≤100),将m的立方写成m个连续奇数之和的形式输出。(1≤m≤100) 

输入描述

        输入一个int整数

输出描述

        输出分解后的string

示例

        输入:6

        输出:31+33+35+37+39+41

        方法1:常规思路,直接计算

         C语言

#include <stdio.h>

int main() {

    int m;

    scanf("%d",&m);

    if(m==1)

    {

        printf("1");

        return 0;

    }

    int i=3;

    //用while来找m个奇数相加的第一个奇数

    while (1) {

        int sum=0,count=0;

        //求m个奇数的和

        for(int j=i;count!=m;j+=2)

        {

            sum+=j;

            count++;

        }

        //如果不满足条件,i的值为后一个奇数

        if(sum!=m*m*m)

        i+=2;

        else

        break;

    }

    for(int j=0;j<m;j++)

    {

        if(j==m-1)

        printf("%d",i+2*j);

        else

        printf("%d+",i+2*j);

    }

    return 0;

}

        Java

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);

        int m=in.nextInt();

        if(m==1)

        {

            System.out.printf("1");

            return ;

        }

        int i=3;

        //用while来找m个奇数相加的第一个奇数

        while (true) {

            int sum=0,count=0;

            for(int j=i;count!=m;j+=2)

            {

                sum+=j;

                count++;

            }

            //如果不满足条件,i的值为后一个奇数

            if(sum!=m*m*m)

            i+=2;

            else

            break;

        }

        for(int j=0;j<m;j++)

        {

            if(j==m-1)

            System.out.printf("%d",i+2*j);

            else

            System.out.printf("%d+",i+2*j);

        }

       

    }

}

        方法2:找规律,找到首个相加的奇数和输入的数之间的关系。

         C语言

#include <stdio.h>

int main() {

    int m;

    scanf("%d",&m);

    int i=m*m-m+1;

    for(int j=0;j<m;j++)

    {

        if(j==m-1)

        printf("%d",i+2*j);

        else

        printf("%d+",i+2*j);

    }

    return 0;

}

        Java

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);

        int m=in.nextInt();

        int i=m*m-m+1;

        for(int j=0;j<m;j++)

        {

            if(j==m-1)

            System.out.printf("%d",i+2*j);

            else

            System.out.printf("%d+",i+2*j);

        }

    }

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/65836.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

13-把矩阵看作是对系统的描述

探索矩阵乘法&#xff1a;更深刻的理解与应用视角 &#x1f9e9;&#x1f50d; 引言 &#x1f4d6; 在我们进一步探讨矩阵乘法之前&#xff0c;让我们从不同的角度来理解什么是矩阵&#xff0c;以及如何将矩阵视为一个系统。我们之前已经介绍了矩阵的基本概念和运算&#xff…

Python Opencv实践 - 图像平移

import numpy as np import matplotlib.pyplot as pltimg cv.imread("../SampleImages/pomeranian.png", cv.IMREAD_COLOR)#图像平移 #cv.warpAffine(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]]) # M是仿射变换矩阵&#xff0c;对于平移来说M是一…

点云基础知识介绍

目录 一、点云数据采集1. 图像衍生点云2. 激光雷达点云3. RGB- D点云4. SAR点云 二、点云特征三、点云应用四、基准数据集 本文由CSDN点云侠原创&#xff0c;原文链接。爬虫网站自重&#xff0c;把自己当个人。 一、点云数据采集 在计算机视觉和遥感中&#xff0c;点云的获取主…

如何微调优化你的ChatGPT提示来提高对话质量

ChatGPT会话质量很大程度上取决于微调优化提示的艺术。本文旨在阐明微调提示的复杂性&#xff0c;以确保你可以充分发挥ChaGPT这一颠覆性工具的潜力。 与ChatGPT对话的关键部分是“提示”。即&#xff1a;你输入的问题或陈述&#xff0c;它决定了人工智能的响应。类似于引导对…

时序预测 | MATLAB实现基于LSTM长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价)

时序预测 | MATLAB实现基于LSTM长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价) 目录 时序预测 | MATLAB实现基于LSTM长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价)预测结果基本介绍程序设计参考资料 预测结果 基本介绍 Matlab实现LSTM长短期记忆神经…

word横向页面侧面页码设置及转pdf后横线变竖线的解决方案

在处理材料的时候&#xff0c;会遇到同一个文档里自某一页开始&#xff0c;页面布局是横向的&#xff0c;这时候页码要设置在侧面&#xff0c;方法是双击页脚&#xff0c;然后在word工具栏上选择“插入”——>“文本框”——>“绘制竖版文本框”&#xff0c;然后在页面左…

RocketMQ 5.1.0 源码详解 | Producer 发送流程

文章目录 初始化DefaultMQProducer实例发送流程DefaultMQProducer#sendDefaultMQProducerImpl#sendMQClientInstance#updateTopicRouteInfoFromNameServer使用特定 topic 获取路由信息使用默认 topic 获取路由信息 DefaultMQProducerImpl#sendDefaultImpl发送流程总结 初始化De…

手撕Java集合——链表

链表 一、链表概念特性二、不带头单向非循环链表实现&#x1f351;1、定义结点&#x1f351;2、打印链表&#x1f351;3、使用递归逆序打印链表&#x1f351;4、头插&#x1f351;5、尾插&#x1f351;6、指定位置插入&#x1f351;7、查找是否包含关键字key是否在单链表当中&a…

C++_模板初阶

在面向对象中&#xff0c;我们可以使用重载来实现多态。 但是问题在于&#xff0c;重载的函数仅仅是类型不同&#xff0c;代码复用率比较低&#xff0c;只要有新的类型出现时&#xff0c;就要增加对应的函数&#xff1b;另一方面它的代码可维护性比较低&#xff0c;一个出错可…

Windows - UWP - 网络不好的情况下安装(微软商店)MicrosoftStore的应用

Windows - UWP - 网络不好的情况下安装&#xff08;微软商店&#xff09;MicrosoftStore的应用 前言 UWP虽然几乎被微软抛弃了&#xff0c;但不得不否认UWP应用给用户带来的体验。沙箱的运行方式加上微软的审核&#xff0c;用户使用起来非常放心&#xff0c;并且完美契合Wind…

最具性价比视频解析卡:Atlas300V,性能和能效业界两倍

华为推出“昇腾伙伴网络”&#xff08;简称APN&#xff09;合作伙伴计划&#xff0c;思腾合力凭借多年在AI行业的积累和自身的实力成为首家签署APN合作协议的公司&#xff0c;共同打造基于昇腾的软硬件AI基础架构解决方案&#xff0c;推进人工智能国产算力的进步和发展。

分支语句与循环语句(2)

3.3 do...while()循环 3.3.1 do语句的语法&#xff1a; do 循环语句; while(表达式); 3.3.2执行流程图&#xff1a; 3.3.3 do语句的特点 循环至少执行一次&#xff0c;使用的场景有限&#xff0c;所以不是经常使用。 打印1-10的整数&#xff1a; #define _CRT_SECURE_NO_WA…