http://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?a=3545
這題是系上鍾主任所出的題目使用遞迴做運算,我當初用c顯示記憶體引用錯誤不知道是什麼原因後還用java就AC了
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
int n = scn.nextInt();
while (n-- != 0) {
String s[] = scn.next().split(",");
double t = Double.parseDouble(s[0]), time = Integer.parseInt(s[1]);
System.out.printf("%.4f\n", call(time, t));
}
}
public static double call(double t1, double t0) {
if (t1 == 0)
return t0;
else
return call(t1 - 1, t0) + t1 * 2.71828;
}
/*
題目:[C_RU07-易] 電路板溫度升高問題.java
作者:1010
時間:西元 2016 年 7 月 */
}
#include<stdio.h>
#include<math.h>
#include <string.h>
double call(double t1,double t0){
if(t1==0)return t0;
else return call(t1-1,t0)+t1*2.71828;
}
int main(){
int n,i;
double t0,t1;
scanf("%d",&n);
for(i=0;i<n;i++){
int j=0;
char str[1000];
scanf("%s",str);
char *test=strtok(str,",");
while (test != NULL) {
if(j==0)t0=atof(test);
else t1=atof(test);
test = strtok(NULL, ",");
j++;
}
printf("%.4lf\n",call(t1,t0));}
/*
題目:[C_RU07-易] 電路板溫度升高問題.c
作者:1010
時間:西元 2016 年 7 月 */
}