|
SECOND |
|
!#51148 (十進BASIC) やっぱりバグでした!以下が正常です、26通り、「訂正」が動かない?
DIM m(2^10) FOR i=BVAL("0000011111",2) TO BVAL("1111100000",2) LET w=i LET b=0 FOR j=1 TO 10 !bit=1の計数 IF 0< MOD(w,2) THEN LET b=b+1 LET w=INT(w/2) NEXT j IF b=5 AND chk(i)=0 THEN LET n=n+1 PRINT USING"!###) ##########":n,right$("00000"& BSTR$(i,2),10) END IF NEXT i FUNCTION chk(w) !右ローテイト10通りで重複チェック LET r=0 LET w1=w !$$$追加 FOR j=1 TO 10 IF 0< m(w) THEN LET r=r+1 ELSE LET m(w)=w IF 0< MOD(w,2) THEN LET w=w+2^10 LET w=INT(w/2) IF w=w1 THEN EXIT FOR !$$$追加 NEXT j LET chk=r END FUNCTION END ! 1) 0000011111 ! 2) 0000101111 ! 3) 0000110111 ! 4) 0000111011 ! 5) 0000111101 ! 6) 0001001111 ! 7) 0001010111 ! 8) 0001011011 ! 9) 0001011101 ! 10) 0001100111 ! 11) 0001101011 ! 12) 0001101101 ! 13) 0001110011 ! 14) 0001110101 ! 15) 0001111001 ! 16) 0010010111 ! 17) 0010011011 ! 18) 0010011101 ! 19) 0010100111 ! 20) 0010101011 ! 21) 0010101101 ! 22) 0010110011 ! 23) 0010110101 ! 24) 0011001101 ! 25) 0011010101 ! 26) 0101010101 |
|
12月30日(木) 5:13:31
51151 |