#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int row, col, k, mask, level, size, n, j;
double t;
int **Latin;
int main(void)
{
printf("input mod:");
scanf("%d",&size);
t= ceil(log(size+1.0)/log(2.0)); //取上整
//printf("t= %f",t);
n= (int)pow(2,t); //實驗次數
printf("實驗次數 %d \n",n);
Latin = (int **)malloc(n * sizeof(int*));
for(j=0;j<n;j++){Latin[j]= (int *)malloc(size * sizeof(int));}
for(row = 0 ; row < n ; row++)
for(col = 0 ; col < size ; col++) {
level = 0;
k = col + 1;
mask = n / 2;
while (k > 0) {
if ((k % 2) && ((row) & (mask)))
level = (level + 1) %2;
k /= 2;
mask /= 2;
Latin[row][col] = level + 1;
}
}
for(row = 0 ; row < n ; row++)
{
for(col = 0 ; col < size ; col++)
{
//printf("[%d%d] ",row,col);
printf("%d ",Latin[row][col]); //欣賞一下所產生的拉丁方陣
}
printf("\n");
}
printf("OK!");
system("PAUSE");
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPG1hdGguaD4KCmludCByb3csIGNvbCwgaywgbWFzaywgbGV2ZWwsIHNpemUsIG4sIGo7CmRvdWJsZSB0OwppbnQgKipMYXRpbjsKCmludCBtYWluKHZvaWQpCnsKCXByaW50ZigiaW5wdXQgbW9kOiIpOwoJc2NhbmYoIiVkIiwmc2l6ZSk7Cgl0PSBjZWlsKGxvZyhzaXplKzEuMCkvbG9nKDIuMCkpOyAgLy/lj5bkuIrmlbQKCS8vcHJpbnRmKCJ0PSAlZiIsdCk7CgluPSAoaW50KXBvdygyLHQpOyAvL+Wvpumpl+asoeaVuAoJcHJpbnRmKCLlr6bpqZfmrKHmlbggJWQgXG4iLG4pOwoJTGF0aW4gPSAoaW50ICoqKW1hbGxvYyhuICogc2l6ZW9mKGludCopKTsKCWZvcihqPTA7ajxuO2orKyl7TGF0aW5bal09IChpbnQgKiltYWxsb2Moc2l6ZSAqIHNpemVvZihpbnQpKTt9CgoJZm9yKHJvdyA9IDAgOyByb3cgPCBuIDsgcm93KyspIAoJCWZvcihjb2wgPSAwIDsgY29sIDwgc2l6ZSAgOyBjb2wrKykgeyAKCQkJbGV2ZWwgPSAwOwoJCQlrID0gY29sICsgMTsKICAgICAgICAgICAgbWFzayA9IG4gLyAyOwoJCQl3aGlsZSAoayA+IDApIHsKCQkJCWlmICgoayAlIDIpICYmICgocm93KSAmIChtYXNrKSkpCgkJCQkJbGV2ZWwgPSAobGV2ZWwgKyAxKSAlMjsKCQkJCWsgLz0gMjsKCQkJCW1hc2sgLz0gMjsKCQkJCUxhdGluW3Jvd11bY29sXSA9IGxldmVsICsgMTsKCQkJfQoJCX0KCgkJZm9yKHJvdyA9IDAgOyByb3cgPCBuIDsgcm93KyspIAoJCXsKCQlmb3IoY29sID0gMCA7IGNvbCA8IHNpemUgOyBjb2wrKykgCgkJewoJCQkvL3ByaW50ZigiWyVkJWRdICIscm93LGNvbCk7CgkJCXByaW50ZigiJWQgIixMYXRpbltyb3ddW2NvbF0pOyAvL+aso+iznuS4gOS4i+aJgOeUoueUn+eahOaLieS4geaWuemZowoJCX0KCQlwcmludGYoIlxuIik7CgkJfQoJCQoJCXByaW50ZigiT0shIik7CgkJc3lzdGVtKCJQQVVTRSIpOwoKCn0=
Main.java:1: error: illegal character: '#'
#include <stdio.h>
^
Main.java:1: error: class, interface, or enum expected
#include <stdio.h>
^
Main.java:2: error: illegal character: '#'
#include <stdlib.h>
^
Main.java:3: error: illegal character: '#'
#include <math.h>
^
Main.java:6: error: class, interface, or enum expected
double t;
^
Main.java:7: error: class, interface, or enum expected
int **Latin;
^
Main.java:9: error: class, interface, or enum expected
int main(void)
^
Main.java:12: error: class, interface, or enum expected
scanf("%d",&size);
^
Main.java:13: error: class, interface, or enum expected
t= ceil(log(size+1.0)/log(2.0)); //???
^
Main.java:15: error: class, interface, or enum expected
n= (int)pow(2,t); //????
^
Main.java:16: error: class, interface, or enum expected
printf("???? %d \n",n);
^
Main.java:17: error: class, interface, or enum expected
Latin = (int **)malloc(n * sizeof(int*));
^
Main.java:18: error: class, interface, or enum expected
for(j=0;j<n;j++){Latin[j]= (int *)malloc(size * sizeof(int));}
^
Main.java:18: error: class, interface, or enum expected
for(j=0;j<n;j++){Latin[j]= (int *)malloc(size * sizeof(int));}
^
Main.java:18: error: class, interface, or enum expected
for(j=0;j<n;j++){Latin[j]= (int *)malloc(size * sizeof(int));}
^
Main.java:18: error: class, interface, or enum expected
for(j=0;j<n;j++){Latin[j]= (int *)malloc(size * sizeof(int));}
^
Main.java:20: error: class, interface, or enum expected
for(row = 0 ; row < n ; row++)
^
Main.java:20: error: class, interface, or enum expected
for(row = 0 ; row < n ; row++)
^
Main.java:21: error: class, interface, or enum expected
for(col = 0 ; col < size ; col++) {
^
Main.java:21: error: class, interface, or enum expected
for(col = 0 ; col < size ; col++) {
^
Main.java:23: error: class, interface, or enum expected
k = col + 1;
^
Main.java:24: error: class, interface, or enum expected
mask = n / 2;
^
Main.java:25: error: class, interface, or enum expected
while (k > 0) {
^
Main.java:28: error: class, interface, or enum expected
k /= 2;
^
Main.java:29: error: class, interface, or enum expected
mask /= 2;
^
Main.java:30: error: class, interface, or enum expected
Latin[row][col] = level + 1;
^
Main.java:31: error: class, interface, or enum expected
}
^
Main.java:34: error: class, interface, or enum expected
for(row = 0 ; row < n ; row++)
^
Main.java:34: error: class, interface, or enum expected
for(row = 0 ; row < n ; row++)
^
Main.java:36: error: class, interface, or enum expected
for(col = 0 ; col < size ; col++)
^
Main.java:36: error: class, interface, or enum expected
for(col = 0 ; col < size ; col++)
^
Main.java:40: error: class, interface, or enum expected
}
^
Main.java:42: error: class, interface, or enum expected
}
^
Main.java:45: error: class, interface, or enum expected
system("PAUSE");
^
Main.java:48: error: class, interface, or enum expected
}
^
35 errors