遞歸算法-1166:求f(x,n)

1166:求f(x,n)

時間限制: 1000 ms 內存限制: 65536 KB
提交數: 8705 通過數: 5717
【題目描述】
已知

在這裏插入圖片描述
計算x=4.2,n=10以及x=2.5,n=15時的f的值。

【輸入】
輸入x和n。

【輸出】
函數值,保留兩位小數。

【輸入樣例】
4.2 10
【輸出樣例】
3.68


思路:由n變到1,最後那個根號裏面有個x,用遞歸方法寫下。

#include<cstdio>
#include<cmath>
#include<iostream>
using namespace std;
float f(float x,float n){
	if(n == 1) return sqrt(x + 1);//判斷是否到達遞歸邊界n=1,最裏面那個根號式子
	else return sqrt(n + f(x,n - 1));//否則繼續遞歸 n-1 層
}
int main(){
	 float a,b;
	 cin >> a >> b;
	 printf("%.2f",f(a,b)); 
	return 0;
} 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章