Twelve statements: Difference between revisions
Content added Content deleted
Line 3,736: | Line 3,736: | ||
Near miss with statements 1 5 8 10 11 12 true (failed 12).</pre> |
Near miss with statements 1 5 8 10 11 12 true (failed 12).</pre> |
||
=={{header|VBA}}== |
|||
{{trans|Phix}}<lang vb>Public s As String '-- (eg "101101100010") |
|||
Public t As Integer '-- scratch |
|||
Function s1() |
|||
s1 = Len(s) = 12 |
|||
End Function |
|||
Function s2() |
|||
t = 0 |
|||
For i = 7 To 12 |
|||
t = t - (Mid(s, i, 1) = "1") |
|||
Next i |
|||
s2 = t = 3 |
|||
End Function |
|||
Function s3() |
|||
t = 0 |
|||
For i = 2 To 12 Step 2 |
|||
t = t - (Mid(s, i, 1) = "1") |
|||
Next i |
|||
s3 = t = 2 |
|||
End Function |
|||
Function s4() |
|||
s4 = Mid(s, 5, 1) = "0" Or ((Mid(s, 6, 1) = "1" And Mid(s, 7, 1) = "1")) |
|||
End Function |
|||
Function s5() |
|||
s5 = Mid(s, 2, 1) = "0" And Mid(s, 3, 1) = "0" And Mid(s, 4, 1) = "0" |
|||
End Function |
|||
Function s6() |
|||
t = 0 |
|||
For i = 1 To 12 Step 2 |
|||
t = t - (Mid(s, i, 1) = "1") |
|||
Next i |
|||
s6 = t = 4 |
|||
End Function |
|||
Function s7() |
|||
s7 = Mid(s, 2, 1) <> Mid(s, 3, 1) |
|||
End Function |
|||
Function s8() |
|||
s8 = Mid(s, 7, 1) = "0" Or (Mid(s, 5, 1) = "1" And Mid(s, 6, 1) = "1") |
|||
End Function |
|||
Function s9() |
|||
t = 0 |
|||
For i = 1 To 6 |
|||
t = t - (Mid(s, i, 1) = "1") |
|||
Next i |
|||
s9 = t = 3 |
|||
End Function |
|||
Function s10() |
|||
s10 = Mid(s, 11, 1) = "1" And Mid(s, 12, 1) = "1" |
|||
End Function |
|||
Function s11() |
|||
t = 0 |
|||
For i = 7 To 9 |
|||
t = t - (Mid(s, i, 1) = "1") |
|||
Next i |
|||
s11 = t = 1 |
|||
End Function |
|||
Function s12() |
|||
t = 0 |
|||
For i = 1 To 11 |
|||
t = t - (Mid(s, i, 1) = "1") |
|||
Next i |
|||
s12 = t = 4 |
|||
End Function |
|||
Public Sub twelve_statements() |
|||
For i = 0 To 2 ^ 12 - 1 |
|||
s = Right(CStr(WorksheetFunction.Dec2Bin(64 + i \ 128)), 5) _ |
|||
& Right(CStr(WorksheetFunction.Dec2Bin(256 + i Mod 128)), 7) |
|||
For b = 1 To 12 |
|||
Select Case b |
|||
Case 1: If s1 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 2: If s2 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 3: If s3 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 4: If s4 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 5: If s5 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 6: If s6 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 7: If s7 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 8: If s8 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 9: If s9 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 10: If s10 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 11: If s11 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
Case 12: If s12 <> (Mid(s, b, 1) = "1") Then Exit For |
|||
End Select |
|||
If b = 12 Then Debug.Print s |
|||
Next |
|||
Next |
|||
End Sub</lang>{{out}} |
|||
<pre>Found solution:101101100010</pre> |
|||
=={{header|zkl}}== |
=={{header|zkl}}== |
||
<lang zkl>var statements; // list of 13 Bools, statements[0] is garbage to make 1 based |
<lang zkl>var statements; // list of 13 Bools, statements[0] is garbage to make 1 based |