• ベストアンサー

C言語で

C言語の授業で課題がでたのですがわかりません。どなたかおしえていただけないでしょうか? [問題] ある商品の原価に消費税5%を加えた金額を計算するとき、 1.切り捨て 2.切り上げ 3.四捨五入 の3つの方法がある。商品の原価をfloat型の数としてscanf()で入力し、それぞれの方法で売価を計算するプログラムを作成せよ という問題です。 原価×1.05 を計算するところまではわかるのですが、どの方法でもその先から進みません。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • jacta
  • ベストアンサー率26% (845/3158)
回答No.1

それぞれに専用の関数があります(とりあえず負数は考慮しない)。 1.切り捨て - floorf関数 2.切り上げ - ceilf関数 3.四捨五入 - roundf関数 古い処理系では上記の関数がサポートされない場合があるのでご注意ください。

その他の回答 (4)

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.5

> こんな感じの関数作れば・・・と思いますが・・・ floatは%演算子を使えませんが、fmodf関数を使えば剰余を求められます。 でも、小数点以下を求めるだけならmodff関数の方が便利です。

  • pipipi523
  • ベストアンサー率40% (148/365)
回答No.4

ANo.3 ぐは、すみませんfloat型なんて滅多に使わないもので(汗 %がダメなら float Surplus(float data1,float data2){   while(data2>data1){     data1-=data2;   } return data1; } こんな感じの関数作れば・・・と思いますが・・・ やっぱり大間違い??

回答No.3

ANo.2: > 切り捨て:原価×1.05-(原価×1.05)%1 > 切り上げ:(原価×1.05+0.9)-(原価×1.05+0.9)%1 > 四捨五入:(原価×1.05+0.5)-(原価×1.05+0.5)%1 大間違い。floatに剰余(%)は適用できない。

  • pipipi523
  • ベストアンサー率40% (148/365)
回答No.2

・・・関数を使わないならこんな感じ? 切り捨て:原価×1.05-(原価×1.05)%1 切り上げ:(原価×1.05+0.9)-(原価×1.05+0.9)%1 四捨五入:(原価×1.05+0.5)-(原価×1.05+0.5)%1

関連するQ&A

  • 消費税計算について

    消費税計算を切り上げ、切り捨て、四捨五入の3パターンでやりたいのですが、可能でしょうか?単純に商品*1.05は四捨五入にあてはまりますか? 教えて下さい。 宜しくお願いしますσ(^^)

  • c言語についての質問です。

    このような問題が出たのですが、作り方を教えてください。お願いします。 int型というやつで、scanf と printf だけを使ってプログラムを作成しなくてはなりません。問題↓ 本年4月より消費税が5%から8%に変更になった.そこで5%税込商品の金額を入力すると,税抜 商品金額及び8%の税込商品金額を表示するプログラムを作成せよ.但し,1円未満の値は 小数点以下第1位を四捨五入すること.(注:5%の税込金額も四捨五入しているので, 税抜金額を求めるとき注意すること)

  • 切り捨て、切り上げ、四捨五入

    数学で切り捨て、切り上げ、四捨五入を習いましたが、正の数だけでした。 最近、マイナス値についての切り捨て、切り上げ、四捨五入を考えるようになりました。 切り捨て-4.2なら-4?-5?-4.8なら-4?-5? 切り上げ-4.2なら-4?-5?-4.8なら-4?-5? 四捨五入-4.2なら-4?-5?-4.8なら-4?-5? の時、それぞれいくつになるのでしょう? コンピュータで計算したいときはほしい結果がわかっているので使い分けできますが、 数学の定義としてどちらが正しいかを教えて下さい。

  • 消費税の端数処理について。

    消費税の端数処理について。 消費税の端数計算に切り捨て、切り上げ、四捨五入の方法がありますが、 個々で計算方法は違うものでしょうか? 各販売店、事業所によって方針は様々かと思いますが、 以下の方法で消費税計算処理を行うと誤差が生じます。 例)単価150円(税別価格) 150 + (150 * 0.05) = 157.5(税別価格 + 税別価格 * 消費税率) 切り捨て → 157円(消費税 7円) 切り上げ → 158円(消費税 8円) 四捨五入 → 158円(消費税 8円) 現在ECサイト構築の機能として課税規則を設けようと思い、 上記の方法で切り捨て計算をする分には問題ありませんが、 切り上げ、四捨五入の際には1円多い結果が出てきます。 こういった誤差に対する対処、対策や、 もし個々で計算方法が違うのであれば教えて頂けませんでしょうか? 法律上でも特に規則なるものはない上に、 経理業務の経験がない為知識が乏しく大変困っています。

  • 消費税の端数の計算、教えてください、

    消費税の計算で、仕入れの消費税(還付)、売上の消費税(支払)、が有りますが、 計算で端数が出た場合、これらは、 切り上げでしょうか?切捨てでしょうか?四捨五入でしょうか? 計算は、全体をまとめてでしょうか?それとも単品から端数を処理するのでしょうか? 分かる方、宜しくお願い申し上げます。

  • 消費税の小数点以下の扱い方

    例えば、130円の商品場合、消費税は6.5円となります。 この場合、一般的に四捨五入で7円となるのでしょうか? それとも、小数点以下は切捨て・切り上げなのでしょうか? 場合によって扱い方が違うのでしょうか? お詳しい方、お願いいたします!

  • エクセルの消費税の計算方法

    エクセル2003です。A1~A4の合計の消費税をA5に表示したい場合+SUM(A1:A4)*5%。そのときに(1)四捨五入(2)切捨て(3)切り上げしたい場合の計算式を教えて下さい。ROUNDDOWN?とかをいれて、いくつかやってみたのですが、なかなかうまくいきません。よろしくお願いします。

  • excel関数で四捨五入以外の切り捨て、切り上げ

    excelの関数で四捨五入以外の切り捨て切り上げはどうすればいいでしょうか。 小数点以下を切り上げ・切り捨てしたいのですが、 .5までは切り捨てにしたいのです。.51だと切り上げ。 ROUNDだと.5から切り上げになりますよね。 よろしくお願いいたします。

  • 消費税の端数処理について

    消費税の端数処理について 「四捨五入」「切り上げ」「切捨て」と企業側が任意で選択出来るのは知っていますが、 実際、多くの企業で選択されているのは、どの方法でしょうか? よろしくお願いします。

  • Accessフォームでの計算について

    フォーム(非連結)での計算時の四捨五入:切り捨て:切り上げの方法を教えてください。Excelのようにround:rounddown:round upのような関数があるのでしょうか? 宜しく御願い致します。

専門家に質問してみよう