まずいつもの通り、projectを作ります。
今回はコンソールアプリなので、visual studioでもいいし、replit.comでもpaiza.ioでもできます。
(もう何も見ないでproject作れない人とかいないよね。。。)
これを踏まえて、ゲームを組み立てていきましょう。
みんな4桁の整数入力しろって言われたらコンソールプログラムではどう書くかな?
#include <stdio.h> int main() { int number; printf("4桁の整数を入力してください: "); scanf("%d", &number); printf("入力された数は: %d\n", number); return 0; }
多分だけど、こう書くんじゃないかな。。。
じゃぁ、問題です、「このプログラムを、Hit&Blowゲームの入力にしたいと思ったときに、どんな問題があるでしょうか?」
こういうのって割と初期の設計段階で大事です!
などがあります。(以下実行結果参照)
さてどうしましょうか?
これは、長い文章や、数字、文字交じりの入力を処理するときによく行う方法ですが、一度文字列として入力を受け取ってしまいます。
そして、そのあとで入力文字列を解析して、必要な部分ごとにデータとして変数に入力していく方法です。
#define _CRT_SECURE_NO_WARNINGS #include <cstdio> #include <cstring> int main() { char str[255] = "";/* 長かった時のために多くメモリを用意 */ printf("4桁の整数を入力してください: "); scanf("%s", str); if (strlen(str) == 4) { printf("入力された数は: %s\n", str); } else { printf("4桁の整数ではありません。\n"); } return 0; }
後はこれを一桁ずつに分解して、整数でもいいし文字のままでもいいので
をつかって、正解として作り出した文字列と比べて
として判断していけばいい気がする!