這是我的代碼,沒有完全完成,抱歉波蘭語,但它很容易得到它。 http://pastebin.com/QPmVaPFv 所以,這是關於獸醫,4個變量是每個訪客的價格: 1.大狗 2.中型犬 3.小型狗 4.cat ,明年4個變量之後是遊客的人數,同如前(大,中,小,貓等)變量瘋狂,舍入數(int,double等)
然後文中說: 每5大狗主人得到了10%的折扣 每3媒體所有者獲得50%的折扣 每4個貓主人在1 $得到的價格即
double zdpies=ldpies/5.;
double zspies=lspies/3.;
double zkot=ckot/4.;
這是部分有折扣
後,我在折扣價
double cdpiespromo=cdpies/10.; Big dog
double cspiespromo=cspies/50.; medium dog
double ckotpromo=1; Cat
然後我的最終價格,即正常價格計算做出不打折
---以上的價格取得與計算的變量normalna:21.6 x 51.0 = 1101.6000000000001
過程完成。
我得到了那個奇怪的數字,51.沒問題,但21.6錯了,必須是22而不是21.6。當我使用「int」它說有「精度損失」,任何想法如何解決?
這裏是最後一個變量,用於計算最終價格打折和沒有折扣。
double idp=ldpies-zdpies; this calculates numbers of visitors without discount
double idc=idp*cdpies; this calculates price number of visitor * normalpriceofbigdog.
您需要使用基本10進制數據類型而不是基本2浮點數類型 –