#23572: 我不知道如何不四捨五入的做....


0520ryanyu (余秉侖)

學校 : 國立科學工業園區實驗高級中學
編號 : 122637
來源 : [60.251.193.198]
最後登入時間 :
2024-07-04 11:58:58
a248. 新手訓練 ~ 陣列應用 -- 新手訓練系列 ~ 2 | From: [60.251.194.164] | 發表日期 : 2020-11-28 23:45

#include<bits/stdc++.h>

using namespace std;

int main(){

int n;

double a,b;

while(cin >> a >> b >> n){

cout<<fixed<<setprecision(n)<<a/b<<'\n';

}

}

只會四捨五入

 

 
#23584: Re:我不知道如何不四捨五入的做....


snakeneedy (蛇~Snake)

學校 : 國立高雄師範大學附屬高級中學
編號 : 7661
來源 : [114.40.8.251]
最後登入時間 :
2023-01-25 19:16:06
a248. 新手訓練 ~ 陣列應用 -- 新手訓練系列 ~ 2 | From: [218.161.41.139] | 發表日期 : 2020-11-30 11:38

以正數來說,要做「無條件捨去」可以用 floor 或 trunc 或整數的除法,不過都是捨去至「整數位」;就要思考怎麼轉換。

可能可以用 a * (10^N) / b,但 N <= 10000 會出現大數問題;或者模擬「長除法」,除到商出現小數 N 位即停止。

最後將答案輸出成指定格式 (整數部分).(N 位小數部分),小數部分要注意 0 的數量。

 
#23590: Re:我不知道如何不四捨五入的做....


0520ryanyu (余秉侖)

學校 : 國立科學工業園區實驗高級中學
編號 : 122637
來源 : [60.251.193.198]
最後登入時間 :
2024-07-04 11:58:58
a248. 新手訓練 ~ 陣列應用 -- 新手訓練系列 ~ 2 | From: [60.251.194.164] | 發表日期 : 2020-11-30 22:04

以正數來說,要做「無條件捨去」可以用 floor 或 trunc 或整數的除法,不過都是捨去至「整數位」;就要思考怎麼轉換。

可能可以用 a * (10^N) / b,但 N <= 10000 會出現大數問題;或者模擬「長除法」,除到商出現小數 N 位即停止。

最後將答案輸出成指定格式 (整數部分).(N 位小數部分),小數部分要注意 0 的數量。

喔喔!謝謝大師

您在討論區一直出現好辛苦(^^)

 
ZeroJudge Forum