尼科彻斯定理-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);

}

}

}

相关推荐
無限進步D1 小时前
Java 运行原理
java·开发语言·入门
難釋懷1 小时前
安装Canal
java
是苏浙1 小时前
JDK17新增特性
java·开发语言
阿里加多5 小时前
第 4 章:Go 线程模型——GMP 深度解析
java·开发语言·后端·golang
likerhood5 小时前
java中`==`和`.equals()`区别
java·开发语言·python
小小李程序员5 小时前
Langchain4j工具调用获取不到ThreadLocal
java·后端·ai
IronMurphy5 小时前
【算法三十九】994. 腐烂的橘子
算法
zs宝来了6 小时前
AQS详解
java·开发语言·jvm
Tomhex6 小时前
C语言内存安全防护指南
c语言
Ares-Wang6 小时前
算法》》旅行商问题 TSP、7座桥问题 哈密顿回路 深度优先 和 宽度优先
算法·深度优先·宽度优先