#14
by girupre » 6年前
みけCATさん ありがとうございます。
まずA~Zまでの書き出しのループのコードがこちらです。
コード:
//A~Z繰り返し
#include <stdio.h>
int main(void)
{
int i,j,k;
for(i=1;i<677;i++){
printf("%d",i);
j=i;
if(j>26)
j=(j - 1) % 26 + 1;
printf("%c\n",'A' + (j - 1));
}
return 0;
}
これを上の元々のコードに入れ込むために
新しくx,yの変数を作りi,jに対応させたつもりなのですが出力がされません。
コード:
#include <stdio.h>
int main(void)
{
int a[26][26],row=26, col=26;
int left = -1, top = 0, right = col-1, bottom = row-1;
int i, j,k=0, n = col*row,x=i,y=j;
while (k<n) {
for (j = ++left; j <= right; j++) a[top][j] = ++k;
for (i = ++top; i <= bottom; i++) a[i][right] = ++k;
if (k > n) break;
for (j = --right; j >= left; j--) a[bottom][j] = ++k;
for (i = --bottom; i >= top; i--) a[i][left] = ++k;
}
for (i = 0;i<row ;i++){
for (j = 0; j < col; j++)
if(y>26) y=(y-1)%26+1;
printf("%c",a[x]['A'+(y-1)]);
printf("\n");
}
return 0;
}
色々試してみたのですが一向に出力されません。
すみませんが、よろしくお願いいたします。
みけCATさん ありがとうございます。
まずA~Zまでの書き出しのループのコードがこちらです。
[code]
//A~Z繰り返し
#include <stdio.h>
int main(void)
{
int i,j,k;
for(i=1;i<677;i++){
printf("%d",i);
j=i;
if(j>26)
j=(j - 1) % 26 + 1;
printf("%c\n",'A' + (j - 1));
}
return 0;
}
[/code]
これを上の元々のコードに入れ込むために
新しくx,yの変数を作りi,jに対応させたつもりなのですが出力がされません。
[code]
#include <stdio.h>
int main(void)
{
int a[26][26],row=26, col=26;
int left = -1, top = 0, right = col-1, bottom = row-1;
int i, j,k=0, n = col*row,x=i,y=j;
while (k<n) {
for (j = ++left; j <= right; j++) a[top][j] = ++k;
for (i = ++top; i <= bottom; i++) a[i][right] = ++k;
if (k > n) break;
for (j = --right; j >= left; j--) a[bottom][j] = ++k;
for (i = --bottom; i >= top; i--) a[i][left] = ++k;
}
for (i = 0;i<row ;i++){
for (j = 0; j < col; j++)
if(y>26) y=(y-1)%26+1;
printf("%c",a[x]['A'+(y-1)]);
printf("\n");
}
return 0;
}
[/code]
色々試してみたのですが一向に出力されません。
すみませんが、よろしくお願いいたします。