
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
別に普通に2次元配列でできるでしょう。
0..なし
1..黒
2..白
3..範囲外
という感じで。
>1:斜めの判定を入れる
forでもwhileでも使えば出来ると思いますが。縦、横の判定と変わるところはないです。
>2:手札を切る部分を関数でつくる
五目並べに手札ってありましたっけ?
>3:3×3を禁止にするプログラムを入れる
3が2つ以上あるかどうかで判定すればいいだけでは?
上のようにやればできるということは分かりましたが、どうもプログラムを作るのが下手なものでして、もしよければプログラムの方も教えていただけましたら幸いです。
下記のプログラムの中に出題された内容を入れて作るみたいなのですが知識が少なすぎてできません。
include<stdio.h>
main (void){
printf("\x1b[2j");
int i, j, r, c, array[9][9]={
{0,1,2,3,4,5,6,7,8},
{1,0,0,0,0,0,0,0,0},
{2,0,0,0,0,0,0,0,0},
{3,0,0,0,0,0,0,0,0},
{4,0,0,0,0,0,0,0,0},
{5,0,0,0,0,0,0,0,0},
{6,0,0,0,0,0,0,0,0},
{7,0,0,0,0,0,0,0,0},
{8,0,0,0,0,0,0,0,0},
};
for(i=0;i<9;i++){
for(j=0;j<9;j++){
printf("%d ",array[i][j]);
}
printf("\n");
}
while(1){
printf("***USER1***\n");
printf("input row:");
scanf("%d",&r);
printf("input column:");
scanf("%d",&c);
array[r][c]=1;
printf("\x1b[2j");
for(i=0;i<9;i++){
for(i=0;i<9;i++){
printf("%d ",array[i][j]);
}
printf("\n");
}
for(i=1;i<9;i++){
for(j=1;j<5;j++){
if(array[i][j]==1 && array[i][j+1]==1 && array[i][j+2]==1 && array[i][j+3]==1 && array[i][j+4]==1){
printf("USER1 WIN!!\n");
}
}
}
for(j=1;j<9;j++){
for(i=1;i<5;i++){
if(array[j][i]==1 && array[j][i+1]==1 && array[j][i+2]==1 && array[j][i+3]==1 && array[j][i+4]==1){
printf("USER1 Win!!\n");
}
}
}
printf("***USER2***\n");
printf("input row:");
scanf("%d",&r);
printf("input column:");
scanf("%d",&c);
array[r][c]=1;
printf("\x1b[2j");
for(i=0;i<9;i++){
for(i=0;i<9;i++){
if(i>0&&j>0&&array[i][j]==1{
printf("\x1b[33m");
}
if(i>0&&j>0&&array[i][j]==2{
printf("\x1b[32m");
}
printf("%d ",array[i][j]);
printf("\x1b[0m");
}
printf("\n");
}
for(i=1;i<9;i++){
for(j=1;j<5;j++){
if(array[i][j]==2 && array[i][j+1]==2 && array[i][j+2]==2 && array[i][j+3]==2 && array[i][j+4]==2){
printf("USER2 WIN!!\n");
}
}
}
for(j=1;j<9;j++){
for(i=1;i<5;i++){
if(array[j][i]==2 && array[j][i+1]==2 && array[j][i+2]==2 && array[j][i+3]==2 && array[j][i+4]==2){
printf("USER2 Win!!\n");
}
}
}
}
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Java Java 南京錠 2 2023/02/04 11:46
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- JavaScript 最小二乗法 2 2023/01/01 20:57
- 工学 1つのタクトスイッチで複数の並列回路を閉じ、アースにつなげることができるスイッチはありますか。 2 2022/08/06 10:38
- Java Java 配列<選挙> 4 2023/07/31 15:07
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- Visual Basic(VBA) Excel のユーザー定義関数でソルバーが動作しない 1 2022/09/05 19:51
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
IF関数でEmpty値を設定する方法。
-
EXCEL VBA で、0から?1から?
-
変数を動的に作るには?
-
動的配列が存在(要素が有る)か...
-
For文と配列
-
遅延バインディングを使用でき...
-
VBAで配列の計算
-
VBで作った乱数を一度も重複さ...
-
マップチップの当たり判定の出し方
-
パソコンキーボードで時分秒を...
-
ラジオボタンのチェックをEnter...
-
VBA 配列で重複した単語が格納...
-
コントロール配列の多次元配列
-
Excel VBAで配列の途中から(X)M...
-
配列プロパティをREDIMする方法...
-
VBScript 配列の宣言に変数を使用
-
Visual C++ でコントロールを...
-
C#でのコントロール配列について
-
C言語 重複しない4ケタの乱数...
-
int型配列の一括初期化
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
IF関数でEmpty値を設定する方法。
-
VBAで配列の計算
-
動的配列が存在(要素が有る)か...
-
パソコンキーボードで時分秒を...
-
EXCEL VBA で、0から?1から?
-
VB.net 引数で配列変数を渡す際...
-
遅延バインディングを使用でき...
-
変数を動的に作るには?
-
配列の要素数を超えた参照のコ...
-
C言語 重複しない4ケタの乱数...
-
VBでbyte配列型のインスタンス...
-
C++、クラスメンバの構造体配列...
-
Excel VBAで配列の途中から(X)M...
-
For文と配列
-
C#の質問
-
Visual C++ でコントロールを...
-
ジャグ配列とは
-
複数のテキストボックスに同じ...
-
【MFC】GetCount()とGetSize()...
-
エクセルで小数の中の最大値を...
おすすめ情報