對不起,這樣的基本水平的問題傢伙。但我是編程的開始。不是電腦的人。所以請幫助我。 在此代碼中,當我給出輸入1000000000
,1000000000
,,答案應該是4.但我的答案是1.我期望if
語句執行,但它不在這裏執行。下面的代碼不會執行一些輸入
如果您將m * n視爲房間,將「a」視爲方形圖塊的邊。然後,我想要算最低號。的瓷磚需要填補房間的地板。瓷磚可能會覆蓋更多的區域,但不應該將房間留空。這是我的目標。它與輸入像6,6,4或15,20,13等工作。
現在它的工作人員。我已經發布了正確的代碼,並在下面做了一些小改動。
import java.util.Scanner;
public class TheatreSquare {
private static Scanner input;
public static void main(String[] args) {
input = new Scanner(System.in);
float m=input.nextFloat();
float n=input.nextFloat();
float a=input.nextFloat();
long i=(int)(m/a);
long j=(int)(n/a);
if((a*a*i*j)<m*n){
if(a*i<m){
//to check weather it is entering if()
System.out.println("true");
i+=1;
}
if(a*j<n){
System.out.println("false");
//to check weather it is entering if()
j+=1;
}
}
System.out.println((double)(i*j));
}
}
我懷疑它的東西在這一行:'長I =(int)的(M/A);'或下一行'長J =(int)的(N/A);' 。當你像這樣分裂時,你會失去精確性。 – oleksii
請詳細解釋你的程序應該做什麼。很難猜測 - 特別是當變量名稱沒有意義時。你應該根據他們所做的事情來命名這些變量。請編輯您的問題並添加必要的信息。 – RealSkeptic
你能解釋一下這段代碼的最終目標是什麼?你想實現什麼?你有很多奇怪的投射(從float到int到long到double),很難判斷它們是否有意義而不知道它們背後的想法 –