15バツ15の数字が書かれたテキストファイルを読み込んで、連続して並んだ数を出力するtate.txtと、数字を
出力するtate.txtを作成しました。
#include "DxLib.h"
#define PI_HW (15)
#pragma warning(disable:4996)
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){
int SetFontThickness(int TinckPal),CheckHitKey(int KeyCode), i, j, MouseX, MouseY, num=0, k=0, n, p=0; FILE *file;
int rn[PI_HW][PI_HW]={0},rc[PI_HW][PI_HW]={0},a[PI_HW][PI_HW]={0}, b[PI_HW]={0},WorkData[PI_HW][PI_HW]={0};
ChangeWindowMode(TRUE);
if(DxLib_Init() == -1){return -1;}
SetMouseDispFlag(TRUE);
file=fopen("masu.txt","r");
for(i=0; i<PI_HW; i++){
for(j=0; j<PI_HW; j++){
fscanf(file,"%d", &WorkData[j]);
}
}
fclose(file);
for (n = 0; n < PI_HW; n++){
for (j = 0; j < PI_HW; j++){
b[j] = a[j][n];
}
while (k < PI_HW){
while (b[k] == 0 && k < PI_HW) k++;
if (k >= PI_HW) break;
i = b[k];
while (b[k] == i){
num++;
k++;
}
rn[n][p] = num;
rc[n][p] = i;
p++;
num = 0;
}
}
file=fopen("tate-.txt","w");
for (j=0; j<PI_HW; j++) {
for (n=0; n<PI_HW; n++) {
fprintf(file,"%2d",rn[n][j]);
}
fprintf(file,"\n");
}
file=fopen("tateiro-.txt","w");
for (j=0; j<PI_HW; j++) {
for (n=0; n<PI_HW; n++) {
fprintf(file,"%2d",rc[n][j]);
}
fprintf(file,"\n");
}
return 0;
}
masu.txt
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
tate.txt
13 10
1 3
tateiro.txt
1 1
1 1
上記のようにmasu.txtを読み込むと、上記のtate、tateiroになる
はずなのですが、tate tateiroともすべて「0」になりました。
どこか間違えているのでしょうか?