2019年05月16日一覧

献立決めるプログラム作成①

こんばんは。

ロベールの赤本をぼちぼち進めております。

再学習ということもあり、基本的なことは頭にすいすい
入ってきて、1年前と比べると少しは成長を感じられ
楽しく学習できています^^

ただ詳しく説明されているのですが、問題的なものはない
ので、参考プログラムを打ち込んで、実行するということ
を繰り返しているうちに、自分でプログラム作ってみたい
いう気持ちが出てきました。

基礎的なことは理解できているなら簡単なプログラムは作れる
のではないかということで嫁さんに「どんなプログラムがあった
らいいかな~?」と聞いてみたところ、「毎日のご飯のメニュー
考えるのがめんどくさいからそれ考えてくれるやつ」とのこと。

なんかそれなら作れそう!

というわけで、ちょっと構成を考えてみました。

~プログラムのあらすじ~

  1. 初期画面を表示
  2.  主食、主菜、副菜、副々菜、汁物を選択させる
  3.   選択外のものが入力されたら再入力させる
  4.    主食を表示
  5.     ごはん系、パン系、麺系を選択させる
  6.      選択外のものが入力されたら再入力させる
  7. 1.に戻る
  8.   2.を選択する
  9.    4.~6.の要領で主菜~汁物まで決める
  10. 1.に戻る
  11. 全ての品目が決定し、初期画面に表示されている
     

上記のような感じのプログラムの作成をしてみたいと思います。

これくらいならポインタもクラスも使わなくていけるかな?

ということで途中まで作成してみました。

#include <iostream>
using namespace std;

int main() {
	int op;
	cout << "メニューを選択する画面です。" << endl;
	cout << "選びたいジャンルの値を押してください。" << endl;
	cout << "1:主食" << endl;
	cout << "2:主菜" << endl;
	cout << "3:副菜" << endl;
	cout << "4:副々菜" << endl;
	cout << "5:汁物" << endl;
	cin >> op;

	switch (op) {
	case 1:
		//主食の処理を加える
	case 2:
		//主菜の処理を加える
	case 3:
		//副菜の処理を加える
	case 4:
		//副々菜の処理を加える
	case 5:
		//汁物の処理を加える
	default:
		cout << "1~5で再入力してください。" << endl;
	}
}

とりあえず初期画面を作って、各品の選択処理はまたあとでと思い、
ここまでは作ってみましたが、ここでちょっと問題が・・・

というのもswicth文で選択させて、選択外の値が入力されたら
再入力をさせたいのですが、ここでプログラムの実行が終わって
しまうのです。

この場合はどうすればいいんだろう。

defaultのとこでなにか仕掛けが必要なのか・・・?

ちょっと参考書とにらめっこしてみます。


スポンサーリンク
広告1
広告1