From 2b803f2ec646547acf7fed96c7023cf882d0e20c Mon Sep 17 00:00:00 2001 From: Miguel Date: Tue, 6 Apr 2021 12:34:36 +0200 Subject: fix franek fix and run 100 random tests via run.sh --- FranekEngine.java | 18 ++++++------------ run.sh | 8 +++++--- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/FranekEngine.java b/FranekEngine.java index d69591b..fffb008 100755 --- a/FranekEngine.java +++ b/FranekEngine.java @@ -141,29 +141,23 @@ public class FranekEngine { System.out.println("Dobry kolor przed: " + dobrykolor); */ //System.out.println("Dobre miejsce1: " + dobremiejsce + "\n" + "Dobry kolor1: " + dobrykolor); - if (( (czerwoneLiczb == 2 && zieloneLiczb == 2) || (czerwoneLiczb == 2 && niebieskieLiczb == 2) || (czerwoneLiczb == 2 && żółteLiczb == 2) || (czerwoneLiczb == 2 && czarneLiczb == 2) - || (czerwoneLiczb == 2 && białeLiczb == 2) || (zieloneLiczb == 2 && niebieskieLiczb == 2) || (zieloneLiczb == 2 && żółteLiczb == 2) || (zieloneLiczb == 2 && czarneLiczb == 2 ) - || (zieloneLiczb == 2 && białeLiczb == 2) || (niebieskieLiczb == 2 && żółteLiczb == 2) || (niebieskieLiczb == 2 && czarneLiczb == 2) || (niebieskieLiczb == 2 && białeLiczb == 2) - || (żółteLiczb == 2 && czarneLiczb == 2) || (żółteLiczb == 2 && białeLiczb == 2) || (czarneLiczb == 2 && białeLiczb == 2)) - && (((dobrykolor == 3) || (dobremiejsce == 1 && dobrykolor == 2)) && !(czerwoneOdp == 3 || zieloneOdp == 3 || niebieskieOdp == 3 || żółteOdp == 3 || czarneOdp == 3 || białeOdp == 3))) - dobrykolor -= 1; - // if (((czerwoneLiczb > 1 && czerwoneLiczb - czerwoneOdp == 1) || (zieloneLiczb > 1 && zieloneLiczb - zieloneOdp == 1) || (niebieskieLiczb > 1 && niebieskieLiczb - niebieskieOdp == 1) - // || (żółteLiczb > 1 && żółteLiczb - żółteOdp == 1) || (czarneLiczb > 1 && czarneLiczb - czarneOdp == 1) || (białeLiczb > 1 && białeLiczb - białeOdp == 1))) - // dobrykolor -= 1; + if (((czerwoneLiczb > 1 && czerwoneLiczb - czerwoneOdp == 1) || (zieloneLiczb > 1 && zieloneLiczb - zieloneOdp == 1) || (niebieskieLiczb > 1 && niebieskieLiczb - niebieskieOdp == 1) + || (żółteLiczb > 1 && żółteLiczb - żółteOdp == 1) || (czarneLiczb > 1 && czarneLiczb - czarneOdp == 1) || (białeLiczb > 1 && białeLiczb - białeOdp == 1))) + dobrykolor -= 1; else if (((czerwoneLiczb - czerwoneOdp == 2 && czerwoneOdp > 0) || (zieloneLiczb - zieloneOdp == 2 && zieloneOdp > 0) || (niebieskieLiczb - niebieskieOdp == 2 && niebieskieOdp > 0)) || (żółteLiczb - żółteOdp == 2 && żółteOdp > 0) || (czarneLiczb - czarneOdp == 2 && czarneOdp > 0) || (białeLiczb - białeOdp == 2 && białeOdp > 0)) dobrykolor -= 2; //System.out.println("Dobre miejsce2: " + dobremiejsce + "\n" + "Dobry kolor2: " + dobrykolor); - - if (( (czerwoneLiczb == 2 && zieloneLiczb == 2) || (czerwoneLiczb == 2 && niebieskieLiczb == 2) || (czerwoneLiczb == 2 && żółteLiczb == 2) || (czerwoneLiczb == 2 && czarneLiczb == 2) + if (( (czerwoneLiczb == 2 && zieloneLiczb == 2) || (czerwoneLiczb == 2 && niebieskieLiczb == 2) || (czerwoneLiczb == 2 && żółteLiczb == 2) || (czerwoneLiczb == 2 && czarneLiczb == 2) || (czerwoneLiczb == 2 && białeLiczb == 2) || (zieloneLiczb == 2 && niebieskieLiczb == 2) || (zieloneLiczb == 2 && żółteLiczb == 2) || (zieloneLiczb == 2 && czarneLiczb == 2 ) || (zieloneLiczb == 2 && białeLiczb == 2) || (niebieskieLiczb == 2 && żółteLiczb == 2) || (niebieskieLiczb == 2 && czarneLiczb == 2) || (niebieskieLiczb == 2 && białeLiczb == 2) || (żółteLiczb == 2 && czarneLiczb == 2) || (żółteLiczb == 2 && białeLiczb == 2) || (czarneLiczb == 2 && białeLiczb == 2)) - && (((dobrykolor == 3) || (dobremiejsce == 1 && dobrykolor == 2)) && !(czerwoneOdp == 3 || niebieskieOdp == 3) || żółteOdp == 3 || czarneOdp == 3 || białeOdp == 3)) + && (((dobrykolor == 3) || (dobremiejsce == 1 && dobrykolor == 2)) && !(czerwoneOdp == 3 || zieloneOdp == 3 || niebieskieOdp == 3 || żółteOdp == 3 || czarneOdp == 3 || białeOdp == 3))) dobrykolor -= 1; + if (dobrykolor < 0) dobrykolor = 0; diff --git a/run.sh b/run.sh index 4aaed84..dfdaa14 100644 --- a/run.sh +++ b/run.sh @@ -1,13 +1,15 @@ javac -encoding utf8 FranekEngine.java javac MiguelEngine.java + +for i in `seq 1 100` +do CODE=" $((1 + $RANDOM % 6)) $((1 + $RANDOM % 6)) $((1 + $RANDOM % 6)) $((1 + $RANDOM % 6))" GUESS=" $((1 + $RANDOM % 6)) $((1 + $RANDOM % 6)) $((1 + $RANDOM % 6)) $((1 + $RANDOM % 6))" FRA=`java FranekEngine $CODE $GUESS` MIG=`java MiguelEngine $CODE $GUESS` - if [ "$FRA" = "$MIG" ]; then - echo $CODE / $GUESS OK + echo tst $i : $CODE / $GUESS OK else echo MISMATCH ON: echo code: $CODE @@ -16,4 +18,4 @@ else echo mig: $MIG exit 0; fi - +done -- cgit v1.2.3