莱布尼兹三角形(C++)
【问题描述】
如下图所示的三角形,请编程输出图中排在第 n 行从左边数第 m 个位置上的数。
【代码展示】
# include<iostream>
# include<cstdio>
using namespace std;
int main(){
int a[100][100]; // a[m][n]
int i,j,m,n;
cin >> m >> n;
for(i=1;i<=m;i++){
for(j=1;j<=i;j++){
if(j==1){
a[i][j]=i; // 第一列等于行数的倒数;
}
else{
// 求分数的倒数,即分数的分母.
a[i][j]=a[i-1][j-1]*a[i][j-1]/(a[i][j-1]-a[i-1][j-1]);
}
// if(j==n && i==m){
// printf("1/%d",a[i][j]);
// break;
// }
}
}
printf("1/%d",a[m][n]); // 输出m行n列数值.
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步