跳轉到內容

Javagony/Javagony 中常見的程式設計問題

來自 Wikibooks,開放的世界,開放的書籍

斐波那契數列

[編輯 | 編輯原始碼]

這是一個在 Javagony 中的遞迴方法,它返回斐波那契數列中第 n 個數字。

public class Fibonacci
{
   public static void main(String[] args)
   {
      System.out.println(fibo(10));
   }
   
   public static int fibo(int n)
   {
      try
      {
         int temp=1/n;
      }
      catch(Exception IO)
      {
         return 0;
      }
      
      try
      {
         int temp=1/(n-1);
      }
      catch(Exception IO)
      {
         return 1;
      }
      
      return fibo(n-1)+fibo(n-2);
   }
}

Fizz Buzz

[編輯 | 編輯原始碼]

這是一種在 Javagony 中的程式碼,它列印從 1 到 100 的所有數字,但對於可以被 3 整除的數字,它將列印“Fizz”,對於可以被 5 整除的數字,它將列印“Buzz”,對於可以被 3 和 5 都整除的數字,它將列印“Fizz Buzz”。

public class Fizzbuzz
{
   public static void main(String[] args)
   {
      forFunction(1,101,1);
   }
   
   public static void forFunction(int firstNum,int lastNum,int step)
   {
      boolean fizz=firstNum%3==0;
      boolean buzz=firstNum%5==0;
      boolean fizzBuzz=fizz&&buzz;
      
      try
      {
         int temp=Boolean.compare(fizzBuzz,true);
         temp=1/temp;
         
         try
         {
            temp=Boolean.compare(fizz,true);
            temp=1/temp;
            
            try
            {
               temp=Boolean.compare(buzz,true);
               temp=1/temp;
               
               System.out.println(firstNum);
            }
            catch(Exception IO)
            {
               System.out.println("Buzz");
            }
         }
         catch(Exception IO)
         {
            System.out.println("Fizz");
         }
      }
      catch(Exception IO)
      {
         System.out.println("Fizz Buzz");
      }
      
      firstNum+=step;
      
      try
      {
         int temp=Math.addExact(firstNum+1,Integer.MAX_VALUE-lastNum);
         forFunction(firstNum,lastNum,step);
      }
      catch(Exception IO) {}
   }
}

這是一種在 Javagony 中的方法,它獲取一個數字,如果它是質數,則返回布林值 true。 否則,它返回布林值 false。

public class PrimeNumber
{
   public static void main(String[] args)
   {
      System.out.println(prime(7));
      System.out.println(prime(8));
   }
   
   public static boolean prime(int n)
   {
      try
      {
         int temp=1/(n-1);
      }
      catch(Exception IO)
      {
         return false;
      }
      
      return forFunction(2,n,1);
   }
   
   public static boolean forFunction(int firstNum,int lastNum,int step)
   {
      boolean b=lastNum%firstNum==0&&lastNum!=2;
      try
      {
         int temp=Boolean.compare(b,true);
         temp=1/temp;
      }
      catch(Exception IO)
      {
         return false;
      }
      
      firstNum+=step;
      
      try
      {
         int temp=Math.addExact(firstNum+1,Integer.MAX_VALUE-lastNum);
         return forFunction(firstNum,lastNum,step);
      }
      catch(Exception IO)
      {
         return true;
      }
   }
}
華夏公益教科書