V
BlackMaster schrieb:
if(id1>0 && id1<4 && id2>0 && id2<4 && id2!=4&& id3>0 && id3<4 && id3!=0&& id4>0 && id4<4 && id4!=2&& id5>0 && id5<4 && id5!=1 )
so hab ichs gemacht
danke!!!!
da alles mit && ist, kann ich mal umsortieren
if(
id1>0 && id1<4 &&
id2>0 && id2<4 && id2!=4 &&
id3>0 && id3<4 && id3!=0 &&
id4>0 && id4<4 && id4!=2 &&
id5>0 && id5<4 && id5!=1 )
dann drehe ich bei bereichen mal die untergrenze um
if(
0<id1 && id1<4 &&
0<id2 && id2<4 && id2!=4 &&
0<id3 && id3<4 && id3!=0 &&
0<id4 && id4<4 && id4!=2 &&
0<id5 && id5<4 && id5!=1 )
und nehme <= statt <
if(
1<=id1 && id1<=3 &&
1<=id2 && id2<=3 && id2!=4 &&
1<=id3 && id3<=3 && id3!=0 &&
1<=id4 && id4<=3 && id4!=2 &&
1<=id5 && id5<=3 && id5!=1 )
dann nehme ich das beliebte range dazu
bool range(int min,int x,int max){
return min<=x && x<=max;
}
...
if(
range(1,id1,3) &&
range(1,id2,3) && id2!=4 &&
range(1,id3,3) && id3!=0 &&
range(1,id4,3) && id4!=2 &&
range(1,id5,3) && id5!=1 )
dann schaue ich, was redundant ist
bool range(int min,int x,int max){
return min<=x && x<=max;
}
...
if(
range(1,id1,3) &&
range(1,id2,3) && id2!=4 && //id2 ist bereits sicher !=4
range(1,id3,3) && id3!=0 && //id3 ist bereits sicher !=0
range(1,id4,3) && id4!=2 && //ok
range(1,id5,3) && id5!=1 //ok
)
also
bool range(int min,int x,int max){
return min<=x && x<=max;
}
...
if(
range(1,id1,3) &&
range(1,id2,3) &&
range(1,id3,3) &&
range(1,id4,3) && id4!=2
range(1,id5,3) && id5!=1
)
vielleicht kann man's so leichter lesen.