Toon posts:

[java] wat betekent dit.....

Pagina: 1
Acties:
  • 113 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
static {
isWon((1 << 0) | (1 << 1) | (1 << 2));
isWon((1 << 3) | (1 << 4) | (1 << 5));
isWon((1 << 6) | (1 << 7) | (1 << 8));
isWon((1 << 0) | (1 << 3) | (1 << 6));
isWon((1 << 1) | (1 << 4) | (1 << 7));
isWon((1 << 2) | (1 << 5) | (1 << 8));
isWon((1 << 0) | (1 << 4) | (1 << 8));
isWon((1 << 2) | (1 << 4) | (1 << 6));
}

ik moet boter kaas en eieren maken voor skool, en nu heb ik van het internet een of andere source gevonden... Dit zijn de winsituaties maar wat er precies staat weet ik echt niet....

alvast bedankt

jack

  • MisterData
  • Registratie: September 2001
  • Laatst online: 07-09 20:23
Op dinsdag 19 maart 2002 20:41 schreef El_Jacko het volgende:
static {
isWon((1 << 0) | (1 << 1) | (1 << 2));
isWon((1 << 3) | (1 << 4) | (1 << 5));
isWon((1 << 6) | (1 << 7) | (1 << 8));
isWon((1 << 0) | (1 << 3) | (1 << 6));
isWon((1 << 1) | (1 << 4) | (1 << 7));
isWon((1 << 2) | (1 << 5) | (1 << 8));
isWon((1 << 0) | (1 << 4) | (1 << 8));
isWon((1 << 2) | (1 << 4) | (1 << 6));
}
Statische constructor, die een aantal methoden aanroept :)
ik moet boter kaas en eieren maken voor skool, en nu heb ik van het internet een of andere source gevonden...
Foei :p

Verwijderd

Topicstarter
hehehe....

ja....

ik doelde (nog erger) op dit stukje..:

(1 << 0) | (1 << 1) | (1 << 2)

Verwijderd

" op1 << op2 shift bits of op1 left by distance op2 "

Is gelijk aan op1 tot-de-macht op2 (SHL)

edit : signed? I presume

  • Ericston
  • Registratie: Maart 2001
  • Laatst online: 05-09 18:58
Op dinsdag 19 maart 2002 20:47 schreef El_Jacko het volgende:
hehehe....

ja....

ik doelde (nog erger) op dit stukje..:

(1 << 0) | (1 << 1) | (1 << 2)
<< is een bitwise left shift.
| is een bitwise or.

My guess...
code:
1
2
3
4
5
6
7
8
9
10
11
12
(1 << 0) | (1 << 1) | (1 << 2)
// ...wordt binair...
( 0001 ) | ( 0010 ) | ( 0100 )
// ...wordt binair...
( 0111 )
// ...wordt decimaal...
( 7 )

// Dus...
(1 << 0) | (1 << 1) | (1 << 2)
// ...zou gelijk zijn aan...
7

...from the top of my head. :)

  • Ericston
  • Registratie: Maart 2001
  • Laatst online: 05-09 18:58
Op dinsdag 19 maart 2002 20:52 schreef robh het volgende:
" op1 << op2 shift bits of op1 left by distance op2 "

Is gelijk aan op1 tot-de-macht op2 (SHL)

edit : signed? I presume
5 << 2 ...
000101 twee naar links...
010100 wordt...
20

Dus:
op1 << op2 == op1 * 2 ^ op2

Verwijderd

Op dinsdag 19 maart 2002 20:58 schreef Ericston het volgende:

5 << 2 ...
000101 twee naar links...
010100 wordt...
20

Dus:
op1 << op2 == op1 * 2 ^ op2
|:( van mij

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Dit programma slaat het veld op in een (integer)waarde aan de hand van bits.
Je moet het zo zien:
Linksboven is 0, rechtsbeneden is 8, in bits
code:
1
2
76543210
00000000

Nu is de bovenste rij positie 0,1 en 2. Dit is een winpositie, dus
code:
1
00000111

is een winpositie. Dit getal kan je maken zoals hij dat doet:
code:
1
(1 << 0) | (1 << 1) | (1 << 2)

Toch vind ik het een beetje lelijke oplossing. In deze tijden hoef je echt niet meer alle velden in 1 integer te proppen. Al helemaal niet voor een spel als boter-kaas-en-eieren. Ik denk eerlijk gezegd dat je een hoger cijfer zal halen wanneer je een elegantere methode bedenkt.

Verwijderd

Op dinsdag 19 maart 2002 20:41 schreef El_Jacko het volgende:

ik moet boter kaas en eieren maken voor skool, en nu heb ik van het internet een of andere source gevonden... Dit zijn de winsituaties maar wat er precies staat weet ik echt niet....

alvast bedankt

jack
HSBOS?? Ikke iig wel komt naar mijn idee uit JDK files :)

  • Ericston
  • Registratie: Maart 2001
  • Laatst online: 05-09 18:58
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
+---+---+---+
|  1|  2|  4|
+---+---+---+
|  8| 16| 32|
+---+---+---+
| 64|128|256|
+---+---+---+
  1: 0000 0000 0001
  2: 0000 0000 0010
  4: 0000 0000 0100

  8: 0000 0000 1000
 16: 0000 0001 0000
 32: 0000 0010 0000

 64: 0000 0100 0000
128: 0000 1000 0000
256: 0001 0000 0000

Daarna doe je een bitwise or op de waarden van kruisje en rondje...
Stel, vakje met waarde 1 en waarde 4 zijn aangeklikt door kruisje:
code:
1
2
3
4
  1: 0000 0000 0001
  4: 0000 0000 0100
  ----------------- |
  5: 0000 0000 0101

0101: kruisje is nog geen winnaar...

Stel, vakje met waarde 2 wordt ook gepakt door kruisje:
code:
1
2
3
4
5
  1: 0000 0000 0001
  2: 0000 0000 0010
  4: 0000 0000 0100
  ----------------- |
  7: 0000 0000 0111

Hej, de bovenste rij is helemaal bezet door kruisje...
...goh, 7 (0111 dus) is een win waarde, net zoals we in de eerste post hebben afgesproken. :)

Verwijderd

Topicstarter
Op dinsdag 19 maart 2002 21:08 schreef ThatsMe het volgende:

[..]

HSBOS?? Ikke iig wel komt naar mijn idee uit JDK files :)
haha, ja die ja... ik ben zelfs zo'n 2de jaars die het overnieuw moet doen, wat een kutopdracht en wat ben ik slecht in java....

maar effe over mijn vraag, wow...Dit lijkt me een iet wat ingewikkelde oplossing dan ja...

thanx in elk geval en Thats me... mail me als je iets hebt :P jxm666@hotmail.com

thanx

hehe

  • Ericston
  • Registratie: Maart 2001
  • Laatst online: 05-09 18:58
Op dinsdag 19 maart 2002 21:15 schreef El_Jacko het volgende:

[..]

haha, ja die ja... ik ben zelfs zo'n 2de jaars die het overnieuw moet doen, wat een kutopdracht en wat ben ik slecht in java....

maar effe over mijn vraag, wow...Dit lijkt me een iet wat ingewikkelde oplossing dan ja...

thanx in elk geval en Thats me... mail me als je iets hebt :P jxm666@hotmail.com

thanx

hehe
Oei, en bitwise operators zitten in elke zichzelf respecterende programmeertaal, niet alleen Java...
Misschien wat bijlezen over logische operators? :)

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Op dinsdag 19 maart 2002 21:18 schreef Ericston het volgende:

[..]

Oei, en bitwise operators zitten in elke zichzelf respecterende programmeertaal, niet alleen Java...
Misschien wat bijlezen over logische operators? :)
Mja maar dat betekent nog niet dat je het ook hoeft te gebruiken. In dit geval vind ik het een stukje obscure code opleveren (ja zelfs in java ;))
Je kan heel goed complete uitgebreide applicaties schrijven zonder ook maar 1 bitshift te gebruiken. Ik gebruik zelden bitmanipulatie. Enkel sommigen API's gebruiken bitwise OR's om opties aan te geven als parameter.

  • tomato
  • Registratie: November 1999
  • Niet online
Het gebruik van bitwise operators op deze manier vind ik eigenlijk ronduit ranzig, zeker in een taal als Java.

Wanneer je niet met iets erg aparts bezig bent zijn bitwise operators en het gebruik van bitsets tegenwoordig IMHO volkomen overbodig en zelfs en vrijwel alle gevallen een slechte oplossing.

Het is natuurlijk goed wanneer je de wiskunde achter deze dingen begrijpt als programmeur (daarom is er als opdracht niets mis mee), maar ik sta er steeds versteld van als ik nog API's tegenkom die gebruik maken van bitsets.

  • judgem
  • Registratie: December 2001
  • Laatst online: 28-04-2014

judgem

Lord of Metal

Jackske!!!! Ga je eens diep schamen joh.. Zomaar je huiswerk op Tweakers te posten... Niet dat ik eruit kom maar goed... Laat Wim het maar niet lezen in elk geval...


Michiel

- Ik bespreek ook harde waren en dan wel op www.lordsofmetal.nl - en ik draai en programmeer ze in DYNAMO


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Op dinsdag 19 maart 2002 20:41 schreef El_Jacko het volgende:
ik moet boter kaas en eieren maken voor skool, en nu heb ik van het internet een of andere source gevonden... Dit zijn de winsituaties maar wat er precies staat weet ik echt niet....
Als je slim bent dan ga je het zelf ff proggen ipv een source van een ander te gebruiken. Ik vind een anders zijn source gebruiken in dit geval vrij }:O
Pagina: 1