public decimal PlanPrice
{
get
{
int x = 0;
decimal a;
a = (decimal)x;
return Settings.Default.PlanPrice;
}
}
public decimal ResultPrice
{get;private set;}
public decimal SubtractPrice
{
get
{
return ResultPrice - PlanPrice;
}
}
public decimal TotalPrice
{
get
{
decimal p =
_previousModel == null ?
0 :
_previousModel.TotalPrice;
return p + SubtractPrice ;
}
}
public decimal PercentComplete
{
get
{
return ResultPrice / PlanPrice;
}
}
↑のコードで達成率をResultPrice / PlanPriceで出そうと思ったのですが1月のように値が出ないのと、decimal型で書いているのに少数が出ないのはどうしてでしょうか?
No.3ベストアンサー
- 回答日時:
doubleがdecimalになっても同じです。
「public decimal PercentComplete」自体は小数点以下まで計算した値を返しているはずです。
なので、この部分だけ見せられても、原因はわかりません。
・PercentCompleteは 比率であって、百分率にはなっていないように見えます。
これを 100倍にするような計算をしているはずです。
それが int p = PercentComplete * 100 ; みたいにintで受けたりしてませんか?
・その表を表示するのに、どんなコントロールを使っているかがわかりませんが、
Columns[達成率].Format ="#,###,###" ;
みたいな感じの書式設定されていたりしませんか?
(.Netの書式設定がそのまま使えるとして)
https://msdn.microsoft.com/ja-jp/library/0c899ak …
上記書式だと、 小数点以下は表示されないし、 #の機能により整数部が 0 の場合は表示されません
1月が空欄なのは、 小数点以下非表示、整数部の0も表示されない、という状態なのでは
No.4
- 回答日時:
> StringFormat=##¥,###¥,###
> このようになってましたが、少数第一位まで表すにはどのような書式にすれば良いのですか?
「c# 書式 桁数」などで検索すればいくらでも情報が取得できると思います
・書式を指定して数値を文字列に変換する
https://dobon.net/vb/dotnet/string/inttostring.h …
・カスタム数値書式指定文字列
https://msdn.microsoft.com/ja-jp/library/0c899ak …
double num = 1234.567;
Console.WriteLine(num.ToString("###")); // 1235
Console.WriteLine(num.ToString("###.0")); // 1234.6
Console.WriteLine(num.ToString("###.00")); // 1234.56
Console.WriteLine(num.ToString("###.000")); // 1234.567
Console.WriteLine(num.ToString("###.0000")); // 1234.5670
num = 0.1234;
Console.WriteLine(num.ToString("##.0%")); // 12.3%
No.2
- 回答日時:
PercentComplete()の呼び元で、小数がでないようにしてるか、結果が小数なしなんじゃないですか。
利用しているコンポーネントが何なのかわかりませんが、それに起因しているという可能性もあります。
decimalを文字に変換してるなら、ToString("F2")などとして小数桁を固定させないと思い通りの動作はしないのでは。
No.1
- 回答日時:
達成率って
public decimal PercentComplete
ってやつですか?
ResultPrice / PlanPrice
ここの計算でint型に変換されちゃってるのではないでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java Java 変数について 1 2022/11/22 16:10
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
- C言語・C++・C# C++プログラミングコードにポリモーフィズムを取り入れ方を教えてください。 2 2023/06/09 11:17
- FX・外国為替取引 mql4のコンパイルエラー箇所の修正お願いします。 1 2023/03/15 16:14
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- オープンソース Coinmarketcap api 1 2022/05/30 15:47
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・ハマっている「お菓子」を教えて!
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
2の補数の計算について
-
C++ 文字列変数と16進数の比較
-
vb6の桁数指定
-
ASPでVBのFormat関数のような機...
-
VB6.0 String型→Long型変換方法...
-
【デコード】バイナリーデータ...
-
XMLでデータとして画像を指定す...
-
エクセルでXY座標に並べられた...
-
VBA 変数名に変数を使用したい。
-
「シフトJIS X 0213」形式の文...
-
サイトの記事をエクセルに落と...
-
ACCESSでORACLEのサーバからデ...
-
CSVファイルのエクスポートでソ...
-
c言語で自分のホームディレク...
-
Excel複数シートをaccessへ一括...
-
アクセスでウェブ上のデータを...
-
AccessVBAコミットとロールバッ...
-
Segmentation Fault (メモリ制限?)
-
掲示板作成中問題が…
-
C言語によるプログラミング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB6.0の「vbFromUnicode」はVB....
-
VB.NETで1→A、2→B、26→Z、27→AA...
-
16進をASCIIコードに変換する...
-
WORD型をCString型に変換する方法
-
C#で文字列を数値に変換する方法
-
【C++/CLI】int型からString型...
-
バイト型のデータをLong型に変換
-
VB6.0 String型→Long型変換方法...
-
C++ 文字列変数と16進数の比較
-
C#でListとDictionaryの判別方法
-
2の補数の計算について
-
Boolean型変数の値を反転する方法
-
数字→漢数字変換
-
16進コード文字列を文字列に変換
-
ASPでVBのFormat関数のような機...
-
VC++ std::stringからLPCWSTRに...
-
10進数を2進数
-
エクセルでメールヘッダーを解...
-
対数変換のついて
-
textbox.textやlabel.captionの...
おすすめ情報
そうです。
public decimal PercentComplete
{
get
{
return ResultPrice / PlanPrice;
}
これだけでは達成率はdecimalにならないんですか?
確かに
StringFormat=##¥,###¥,###
このようになってましたが、少数第一位まで表すにはどのような書式にすれば良いのですか?
PercentCompleteはratioに変換します。