社区讨论

一道有趣的证明题

灌水区参与者 8已保存回复 24

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
24 条
当前快照
1 份
快照标识符
@lo8ki7uy
此快照首次捕获于
2023/10/27 20:06
2 年前
此快照最后确认于
2023/10/27 20:06
2 年前
查看原帖
f(x)=limni=1nxn×f(ixn)(f(x)0且当x0,f(x)0)f(x)=\lim_{n \to \infty} \sum_{i=1}^{n} \dfrac{x}{n}\times f(\dfrac{ix}{n}) (f(x)\ge 0\text{且当}x\ne 0\text{时},f(x)\ne 0)
证明:这个函数不存在。
当然,你若是认为函数不能写成这种“套娃”的形式,那么你可以把它理解为一个计算机函数:
CPP
#include<iostream>
using namespace std;
//虽然精度不够,但是思路是对的 
float func(float x){
	int n=0;
	float a,res;//result
	while(114514<1919810){
		n++;
	}
	a = 1.0*x/n;
	for(int i=1;i<=n;i++){
		res+=a*func(1.0*i*x/n);
	}
	return res;
}
int main(){
	float x;
	cin >> x;
	cout << func(x);
	return 0;
}
有的人认为这个计算机函数输出不了值,所以这个函数不存在。这种证明方法是错误的。你看看黎曼ζ函数:
ζ(s)=n=11ns\zeta(s)=\sum_{n=1}^{\infty}\dfrac{1}{n^s}
它的计算机函数是这样的:
CPP
#include<iostream>
#include<math.h>
using namespace std;
//虽然精度不够,但是思路是对的 
float func(float s){//ζ
	int i=1;
	float res=0;//result
	while(24){
		res += 1.0/(pow(i,s));
		i++;
	}
	return res;
}
int main(){
	float x;
	cin >> x;
	cout << func(x);
	return 0;
}
虽然这个计算机函数输出不了值,但是黎曼ζ函数依然存在。所以我们不能通过一个函数所对应的计算机函数能否输出值来判断这个函数是否存在。
所以我们需要用另一种角度来证明这道题,欢迎大家在这张帖子下面讨论!

回复

24 条回复,欢迎继续交流。

正在加载回复...