C言語で利益と損失を判定するプログラムの作成方法
ある商品やサービスの原価(cost price:cp)と販売価格(selling price:sp)が与えられたとき、C言語のプログラムを使って「利益」が出たのか「損失」が発生したのかを判定し、その金額を出力する方法を解説します。
具体的には、以下のように出力を切り分けます。
- 利益が出た場合 → 「Profit」とその金額を出力
- 損失が発生した場合 → 「Loss」とその金額を出力
- 損得どちらもない場合 → 「No profit nor Loss」を出力
利益・損失の判定ロジック
利益か損失かを判断するには、販売価格(sp)と原価(cp)を比較します。基本的な考え方は以下の通りです。
- 原価 > 販売価格の場合: 損失が発生しているとみなされ、その差額(cp − sp)が総損失額となります。
- 販売価格 > 原価の場合: 利益が出ているとみなされ、その差額(sp − cp)が総利益額となります。
- 販売価格 = 原価の場合: 利益も損失も発生していません。
入出力例
入力: cp = 149, sp = 229
出力: Profit 80
説明: 販売価格(sp)が原価(cp)より大きいため、利益は sp − cp = 80 となります。
入力: cp = 149, sp = 129
出力: Loss 20
説明: 原価(cp)が販売価格(sp)より大きいため、損失は cp − sp = 20 となります。
問題を解くためのアプローチ
- 原価と販売価格を入力として受け取る
- 原価 > 販売価格であれば損失なので、差額を計算して結果を返す
- 販売価格 > 原価であれば利益なので、差額を計算して結果を返す
- 販売価格 = 原価であれば、利益も損失もないと判定する
アルゴリズム
Start
In function int Profit(int cp, int sp)
Step 1→ Return (sp - cp)
In function int Loss(int cp, int sp)
Step 1→ Return (cp - sp)
In function int main()
Step 1→ Declare and initialize cp = 5000, sp = 6700
Step 2→ If sp == cp then,
Print "No profit nor Loss"
Step 3→ Else if sp > cp
Print Profit
Step 4→ Else
Print Loss
Stop
C言語での実装例
#include <stdio.h>
// 利益を返す関数
int Profit(int cp, int sp){
return (sp - cp);
}
// 損失を返す関数
int Loss(int cp, int sp){
return (cp - sp);
}
int main(){
int cp = 5000, sp = 6700;
if (sp == cp)
printf("No profit nor Loss\n");
else if (sp > cp)
printf("%d Profit\n", Profit(cp, sp));
else
printf("%d Loss\n", Loss(cp, sp));
return 0;
}
実行結果
上記のコードを実行すると、次の出力が得られます。
1700 Profit
この例では、原価5000に対して販売価格6700のため、差額1700が利益として出力されます。条件分岐の順序に注意すれば、初心者の方でも簡単に実装できる基本的なプログラムです。
-
Windows 8.1の主な問題点と解決策トップ4
Windows 8.1がついに正式リリースされました。多くのユーザーが待ち望んでいた新OSへのアップグレードですが、実際に「Windows 8.1」や「Windows RT 8.1」を使い始めたユーザーの間では、さまざまな不具合が報告されています。 この記事では、特に深刻なバグやアップデート関連の問題をまとめ、それぞれの対処法をご紹介します。 Windows RT 8.1のブルースクリーン(BSOD)問題 多くのユーザーから、Windows RT 8.1をインストールした直後にブルースクリーンオブデス(BSOD)やブート構成データファイルのエラーが発生するという報告が寄せられています。この
-
Samsung MembersアプリでGalaxyスマホの不具合を診断・解決する完全ガイド
競争の激しいスマートフォン市場において、Samsung(サムスン)は確固たる地位を築いています。多くのユーザーにとって、Samsungは単なるスマートフォンメーカーのひとつではなく、優れたソフトウェアと高い信頼性、そして世界トップクラスのアフターサービスを提供するブランドです。とはいえ、スマートフォンは完璧な製品ではなく、周りに相談できる人がいない状況で、何らかのトラブルに見舞われることもあるでしょう。 そんなときに役立つのが「Samsung Members」アプリです。Samsung製スマートフォンをお持ちなら、このアプリに搭載された診断機能やチュートリアルを活用して、端末の主な問題を特定