• ベストアンサー

C言語にすごく悩んでいます。

ヒットアンドブロー(数当てゲーム、四桁)のプログラムの作成なんですが、自分はどうしてもできません。(>_<)!しかしできないと単位ももらえないので、みんなの力を借りたいのですが、ぜひ助けてください!

質問者が選んだベストアンサー

  • ベストアンサー
  • dotcom
  • ベストアンサー率67% (36/53)
回答No.1

以下のURLに、Hit&Blowのプログラムとアルゴリズムがありますので、参考にしてください。 そのまま引用せず、「#define N 4」などとして、N桁でも対応できるように改造してみては、如何でしょうか。

参考URL:
http://www.media.osaka-cu.ac.jp/~k-abe/2001-JS-OSAKA-U/7.html
kosimosi
質問者

お礼

本当にありがとうございます。問題は無事解決しました。(^o^)

関連するQ&A

  • C言語のプログラミングについてです><

    今C言語のプログラミングの勉強をしているのですが、わからないプログラムがでてきたので教えてくださる方がいらっしゃれば、ご教授願いたいです。 数当てゲームの作成 1~9(0は除く)のなかから4つの異なる数字をランダムで選択し、4桁の数をつくる。ユーザは4つの数字の並びを入力して、作られた数を当てる。 ユーザの入力した数と作られた数を比較して、同じ数字が同じ桁にある場合は"Hit"というヒントを与える。また、同じ数字が異なる桁にある場合は"Blow"というヒントを与える。すなわち、作られた数が5849で、ユーザが4829という数値を入力した場合、"2 Hit 1 Blow"というヒントが表示されるようにする。 ユーザは10回まで、入力するチャンスが与えられる。 といった感じのプログラミングなんですが、C言語初心者である自分にはまったくわかりません; ; どなたかわかる方がいらっしゃれば、助けていただけないでしょうか?よろしくお願いします!

  • C言語の勉強法

    C言語の勉強法で実用的なプログラムのソースが載っているサイトもしくは書籍はご存じないでしょうか? 種類はゲームやアプリケーションなどなんでもよく、作っておくとためになるようなものなら問いません。 自分のCプログラムのレベルは、C言語の入門書を終了し、じゃんけんプログラムや数当てゲームなどの簡単なプログラムを組めるようになった程度です。 それよりも、少し難しいプログラムを紹介してくださると大変ありがたいです。(厚かましいかもしれませんが…)

  • 数あて(ゲームです)

    友達と2人で、今マイブームの数あてゲームをしていました。coinsidence of number を略して CN と呼んでいるのですが、 どういったゲームかというと、みなさんもやったことあるかもしれませんが、好きな数字を自分の紙に書いておいて、相手が言った同じ桁の数字の 数字と場所が一致している数字が一つある場合は 1ヒット。。 同じ数字があるが場所がちがう数字が一つある場合は1ボール。このルールに従って 交互に進めていき相手の数字をさきにあてたほうが勝つと言うゲームです。 説明が下手なので例をあげると  僕の数字が 3456 だったとします。 相手が4258といったとすると 5が同じ場所にあるので1ヒット 4はありますが場所がちがうので 1ボール  よって 1ヒット 1ボール と僕はいいます。 これを交互にやっていくと、相手の数字がなになのか徐々に絞られます。 このようなゲームなのですが、ここで質問なんです。 3197 1ヒット 4062 2ボール 3405 1ヒット1ボール 3846 1ヒット これらの情報だけで僕の選んだ四桁の数字を割り出すことはできるでしょうか? 友達が見事にあてたんです。考えてみましたがわけがわかりません。 あらかじめ僕の数字がわかっていると考えにくいでしょうから答えは書きません。後で要求してください。 おねがいします!!!

  • 高(1)男子 初めてC言語でコードを書きました!!

    C言語を独学し始めた高校一年男子です。 「猫でもわかる C言語プログラミング」という本で勉強しています。 その本のポインタなどの難しいところを除いて 一通り読んで1~100までの数を当てる数当てゲームを作ってみました! これまでは、本に書かれていることを写してやっていたので、自分で組むのは初めてです。 これからは、もっと高度なプログラムやゲームを作っていきたいと思っています。 それを踏まえて、今後どのようなことを気をつけて書いていけばいいかなどの アドバイスをコードを見てしてもらいたいのですが、 だれか、お願いできないでしょうか? これが、そのコードです↓ //<if,goto,rand関数を使った数当てゲーム>// #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { printf("いまから数当てゲームをします\n"); R: printf("0~100のうちどれが答えなのか当ててください\n"); int Q,A,Y,i; srand((unsigned)time(NULL)); Q=rand()%100+1; for(i=1; i<6; i++) {printf("あと%d回で当ててください!\n",6-i); scanf("%d",&A); if(Q<A){printf("もっと小さい数です\n"); } else if(Q>A){printf("もっと大きい数です\n"); } else{printf("正解です!!(^O^)/\nもう一回やりますか??\nはい→1\nいいえ→それ以外の数字\n選択してください\n"); scanf("%d",&Y); if(1==Y){goto R;} if(1!=Y){}break;}} printf("\n「「「終了します」」」\n"); return 0; } 長くなりましたが、アドバイスお願いします m(._.)m

  • C言語の課題が分からなくて困っています。

    http://www.picamatic.com/view/5868047_かかか/ URLの画像のような数当てゲームのプログラムを作成しているのですが、(1)~(5)の部分が分からなくて困っています。 面倒だとは思いますが、教えていただけないでしょうか。 #include<stdio.h> #include<stdlib.h> #include<time.h> int mani(void){ int i,x,y; srand((unsigned int)time(NULL)); (1) //1~1000の数をランダムに作成   y=0; //入力回数yを0にセットする for(;;){ //break文があるまで以下の処理を繰り返す printf("1以上1000以下の整数を入力してください。\n"); (2) //答えの入力 y=y+1; //入力回数yを1を増やす (3) //あたりの場合 printf("%d回目で当たりました。\n",y); (4) } else{ //外れの場合    (5) printf("違います。もっと大きな数です。\n"); else printf("違います。もっと小さな数です。\n"); } } return 0; }

  • c言語入門者です。

    c言語入門者です。 円周率暗記練習のプログラムを作成したいと思いましたが、早速つまずいています。 二冊の入門書は結構読み込んだつもりです。三日間考えたり検索してみたのですが、 どうしても糸口が見つからなかったので質問します。 円周率一万桁程度の数列に対して例えば3.1415926535や3.14などの先頭からの一部のみの数列で 真とする方法はどうすれば良いのでしょうか? また一万桁などの大きなデータはファイル入力によって処理するのでしょうか?

  • C言語で何か作ってみようと思います

    こんばんは。 現在C言語を学んでおり、折角学んでいるのだから何か作ってみようと思っているものです。 そこでご質問があるのですが、C言語で何か(ゲーム、フリーソフト、メカ制御等)作っている過程を紹介しているサイト、書籍等を教えて頂けませんでしょうか? テトリスは作ったことがあります。 フリーソフトは作ったことがないので、作り方を紹介しているものがあれば作成したいと考えております。 メカ制御は、ロボット等のメカの簡単な動きをプログラムで制御してみたいなと思い、加えてみました。 その他、皆様がC言語で何かを作ってみた時に利用したものを教えて頂ければ幸いです。 以上、よろしくお願い致します。

  • 質問です

    2分探索法を使って,数当てゲームと非線形方程式のプログラムを教えてください 数当てゲームは,数を自然数し,自分が考えた数字をコンピュータがあてるといったプログラムです.自分がかんがえてた数字よりコンピュータが大きい数字を言ってきたら大きいといった感じにしたいです よろしくお願いしますあと,非線形方程式の解も数は実数とします

  • プログラミングソフトパスカルを使って。

    パスカルを使って数当てゲーム(1~999まで)のプログラムを作成したいのですが、うまくいきません。インターネットで検索してもプログラム自体を載せてるやつがないので、わかる方がいらっしゃったらよろしくお願いします。万年カレンダーのプログラムも同時に回答募集します。

  • hit&blow

    3桁の数字を当てるhit&blowを作っています。 3桁の重複のない数字を発生させ、入力した数字と照合させ正解か不正解の判定までは出来ます。しかし、hitとblowの表示ができず苦しんでます。 アドバイス、参考になるサイト等を教えてください。 お願いします。