標題:
Java 310 遞迴函數
[打印本頁]
作者:
may
時間:
2023-9-1 16:16
標題:
Java 310 遞迴函數
1. 題目說明:
請開啟C:\ANS.CSF\JP03資料夾中的JPD03.java進行編寫。依下列題意進行作答:設計可以遞迴執行的函數,使輸出值符合題意要求。檔案名稱請另存新檔為JPA03.java,儲存於C:\ANS.CSF\JP03資料夾,再進行評分。
2. 設計說明:
(1) 請在程式中撰寫一個compute的遞迴函數,接收main()傳遞的一個數值,compute函數計算下列公式並回傳至main()。
* compute(1) = 2
* compute(n) = compute(n - 1) + 3 x n
(2) 若使用者輸入負整數,請取絕對值後傳入compute();若輸入0、帶有小數點的數字或文字,請輸出【error】。
3. 輸入輸出:
輸入說明
一個整數
輸出說明
函數計算結果(輸出最後一行後不自動換行)
範例輸入1
5
範例輸出1
44
範例輸入2
0
範例輸出2
error
本帖隱藏的內容需要回復才可以瀏覽
作者:
許志捷
時間:
2023-9-1 17:51
package homework;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n;
try {
n=sc.nextInt();
if(n<0)
System.out.print(compute(Math.abs(n)));
else if(n==0)
System.out.print("error");
else
System.out.print(compute(n));
} catch (Exception e) {
System.out.print("error");
return;
}
// TO DO
}
public static int compute(int i) {
if(i==1)
return 2;
return compute(i-1)+3*i;
}
}
複製代碼
作者:
郭又瑄
時間:
2023-9-15 19:32
本帖最後由 郭又瑄 於 2023-9-15 19:41 編輯
import java.util.Scanner;
public class Ch01 {
public static void main(String[] args) {
// TODO 自動產生的方法 Stub
Scanner sc=new Scanner(System.in);
int n;
try{
n=sc.nextInt();
if(n==0){
System.out.println("error");
return;
}
n=Math.abs(n);
System.out.println(compute(n));
}catch(Exception e){
System.out.println("error");
return;
}
public static int compute(int i){
if(i==1)
return 2;
else
return compute(i-1)+3*i;
}
}
複製代碼
作者:
洪浚恩
時間:
2023-9-15 19:35
import java.util.Scanner;
public class JPA03 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n;
try{
n=sc.nextInt();
if(n==0){
System.out.println("error");
return;
}
n=Math.abs(n);
System.out.println(compute(n));
}catch(Exception e){
System.out.println("error");
return;
}
}
public static int compute(int i){
if(i==1)
return 2;
else
return compute(i-1)+3*i;
}
}
複製代碼
作者:
吳侑諶
時間:
2023-9-15 19:40
本帖最後由 吳侑諶 於 2023-10-19 19:36 編輯
import java.util.Scanner;
public class Ch01 {
public static void main(String[] args) {
// TODO 自動產生的方法 Stub
Scanner sc=new Scanner(System.in);
int n;
try{
n=sc.nextInt();
if(n==0){
System.out.print("error");
return;
}
n=Math.abs(n);
System.out.print(compute(n));
}catch(Exception e){
System.out.print("error");
return;
}
}
public static int compute(int i){
if(i==1)
return 2;
else
return compute(i-1)+3*i;
}
}
複製代碼
作者:
陳柏融
時間:
2023-9-15 19:40
本帖最後由 陳柏融 於 2023-9-15 19:41 編輯
import java.util.Scanner;
public class Ch04 {
public static void main(String[] args) {
Scanner sc new Scanner(System.in);
int n;
try{
n=sc.nextInt();
if(n==0){
System.out.print("error");
return;
}
n=Math.abs(n);
}catch(Exception e){
System.out.print("error");
return;
}
}
public static int compute(int i){
if(i==0){
return 2;
}
else
return compute(i-1)+3*i;
}
}
複製代碼
作者:
洪浚恩
時間:
2023-9-15 19:41
import java.util.Scanner;
public class JPA03 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n;
try{
n=sc.nextInt();
if(n==0){
System.out.println("error");
return;
}
n=Math.abs(n);
System.out.println(compute(n));
}catch(Exception e){
System.out.println("error");
return;
}
}
public static int compute(int i){
if(i==1)
return 2;
else
return compute(i-1)+3*i;
}
}
複製代碼
作者:
田家齊
時間:
2023-9-15 19:42
import java.util.Scanner;
public class Ch02
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int n=0;
try
{
n=sc.nextInt();
if(n==0)
{
System.out.print("error");
return;
}
n=Math.abs(n);
System.out.print(compute(n));
}catch(Exception e)
{
System.out.print("error");
return;
}
}
public static int compute(int i)
{
if(i==1)
return 2;
else
return compute(i-1)+3*i;
}
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2