アフィリエイト広告を利用しています
概要
坪の計算アプリを作ってみたいと思い作ってみた。
C++開発環境(Visual Studio 2022 Preview)で実装する
以下の内容で実装する。
・坪の値を入力すると平方メートルの値が算出される。
・平方メートルの値を入力すると坪の値が算出される。
・1坪=3.306m2で計算する。
・対話式で入力する。
コンソールアプリを選択して次へをクリック。

プロジェクト名に適当な名前を入力して作成をクリック。

サンプルコード
#include <iostream>
#include <string>
#include <iomanip>
#include <limits>
// 坪から平方メートルに変換する関数
double tsubo_to_square_meter(double tsubo) {
return tsubo * 3.306;
}
// 平方メートルから坪に変換する関数
double square_meter_to_tsubo(double square_meter) {
return square_meter / 3.306;
}
int main() {
int choice;
double input;
double result;
std::cout << "坪と平方メートルの変換" << std::endl;
std::cout << "1. 坪から平方メートルへの変換" << std::endl;
std::cout << "2. 平方メートルから坪への変換" << std::endl;
std::cout << "0. 終了" << std::endl;
do {
std::cout << "選択してください (1, 2, 0): ";
std::cin >> choice;
// 入力ストリームのエラーをクリアし、次の行までスキップ
std::cin.clear();
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
switch (choice) {
case 1:
std::cout << "坪を入力してください: ";
if (std::cin >> input) {
result = tsubo_to_square_meter(input);
std::cout << std::fixed << std::setprecision(3) << "平方メートル: " << result << std::endl;
}
else {
std::cout << "無効な入力です。" << std::endl;
std::cin.clear();
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}
break;
case 2:
std::cout << "平方メートルを入力してください: ";
if (std::cin >> input) {
result = square_meter_to_tsubo(input);
std::cout << std::fixed << std::setprecision(3) << "坪: " << result << std::endl;
}
else {
std::cout << "無効な入力です。" << std::endl;
std::cin.clear();
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}
break;
case 0:
std::cout << "終了します。" << std::endl;
break;
default:
std::cout << "無効な選択です。もう一度選択してください。" << std::endl;
break;
}
} while (choice != 0);
return 0;
}
プロパティでC++言語標準でISO C++17を選択

デバッグ

対話式で選択して入力するだけ、うまく実装できた。
・坪から平方メートルへの変換

・平方メートルから坪への変換


コメント