Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

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が利益として出力されます。条件分岐の順序に注意すれば、初心者の方でも簡単に実装できる基本的なプログラムです。

  1. 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)やブート構成データファイルのエラーが発生するという報告が寄せられています。この

  2. Samsung MembersアプリでGalaxyスマホの不具合を診断・解決する完全ガイド

    競争の激しいスマートフォン市場において、Samsung(サムスン)は確固たる地位を築いています。多くのユーザーにとって、Samsungは単なるスマートフォンメーカーのひとつではなく、優れたソフトウェアと高い信頼性、そして世界トップクラスのアフターサービスを提供するブランドです。とはいえ、スマートフォンは完璧な製品ではなく、周りに相談できる人がいない状況で、何らかのトラブルに見舞われることもあるでしょう。 そんなときに役立つのが「Samsung Members」アプリです。Samsung製スマートフォンをお持ちなら、このアプリに搭載された診断機能やチュートリアルを活用して、端末の主な問題を特定