2016-04-02 951 views
-1

我正在讀取一些整數輸入。第一個輸入是貓和狗的種羣,第二個輸入是一個整數,代表該種羣的狗的百分比。我試圖計算出這兩個整數有多少隻狗和貓。將int轉換爲百分比或小數

dogs = population * percentage 
cats = population - dogs 

數學很容易,我有一些麻煩是使用整數來獲得這些值。

輸入必須以整數形式讀入。

+0

你有什麼困難?你的代碼在哪裏,你期望它做什麼,它做什麼呢? –

+0

@Talen對於小數點以下的數字使用int,對於具有小數的數字使用double(或float),您可以de'double num = scanner.nextInt()' – Ferrybig

+0

@RealSkeptic好主意。整數讀入爲40,我需要除以100.建議這是一個答案,所以我可以接受它。謝謝。 –

回答

1

如果百分比是像0.4的數,您無法讀取它作爲一個整數。如果是40,那麼你可以閱讀它 - 但那麼你不能只乘以它的人口 - 你需要除以100.

記得在你成倍後分裂,否則你可能會最終與一個因爲整數除法爲零。 percentage/100會給你零。但population * percentage/100會給你一個合理的數字,只要人口足夠大。

-2

使用掃描儀或緩衝讀取器讀取數據並將其放入int變量。

-1

你可以分享你用於輸入的代碼嗎?當我要求用戶輸入時,我通常必須使用ParseInt函數將其字符串輸入轉換爲數字。例如:

String Dogs = JOptionPane.showInputDialog("Please enter number of dogs"); 
Integer.parseInt(Dogs); 
System.out.println(Dogs); 

最後一行是打印出我們輸入一個已經從一個字符串轉換成整數,只是檢查它的工作原理。 我希望這有助於!

0

好吧,你不能有一隻半狗或半隻貓。所以基本上你可以做這樣的:

dogs = (population * percentage)/100; 
cats = (population - dogs); 

dogs和​​必須是整數。

你也可以檢查,這是真的發生了什麼:

if((dogs+cats)!=population) System.out.println(**error message about wrong input**);