Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Suche » Suchergebnis » Hallo Gast [Anmelden|Registrieren]
Zeige Beiträge 1 bis 1 von 1 Treffern
Autor Beitrag
Thema: [Java - Bitshifting] Kardinalität einer Menge
Shalec

Antworten: 2
Hits: 4.978
[Java - Bitshifting] Kardinalität einer Menge 11.11.2011 11:22 Forum: Praktische Informatik


Hallo,
meine Aufgabe ist es ( ohne vorher je einen quellcode aus Java gesehen zu haben ) in java ein Programm zu schreiben ( ohne die Befehle aus der Vorlesung zu kennen ) einen code zu vollenden.

dabei werden folgende operationen definiert:

(die Klasse heißt MyBitSet)

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
public int setState
MyBitSet(){ 
                setState=0;
              }
public MyBitSet(MyBitSet theOtherSet) { 
                 setState = theOtherSet.toInt(); 
               }
public MyBitSet(int m) {
                            setState = m;
                              }
public boolean empty(){
          boolean isEmpty = true; 
           if (setState !=0){
                          isEmpty =false;
                            } 
return isEmpty;

public int card(){ 
               int numElements=0; 
>code ist zu entwickeln <; 
                return numElements;
}


ich hoffe, dass das so lesbar ist..

das ist eben der code bishin zu der stelle, an der ich nun einen weiteren befehl codieren soll..

nun 2 fragen:
1. ist das bislang so ok? (erstes Übungsblatt ohne Hintergrundwissen)
2. die bitshifting operatorn |, & sowie ^ sind in der übung angegeben, jedoch nicht weiter vertieft (d.h. funktionsweise unbekannt). nun habe ich eine seite gefunden:
Orcale
Zitat:
The bitwise & operator performs a bitwise AND operation.
The bitwise ^ operator performs a bitwise exclusive OR operation.
The bitwise | operator performs a bitwise inclusive OR operation.


damit ist die Funktionsweise von & geklärt worden, aber ich habe keine ahnung, was eine exclusive bzw. inclusive OR operation ist.

Mit BlueJ kann man ja eine Liveprogrammierung ausprobieren.. dadurch habe ich mir gedacht, da wegen 1^2=3 eben die bits vereinigt werden, d.h. ^ steht für eine vereinigung, genauso wie |..
einen unterschied habe ich bei 1^3^4=6 sowie 1|3|4=7 bemerkt.

kann mir jemand diese operationen erklären?
(was eine kardinalität ist, ist mir klar - die Umsetzung in Java nicht so sehr..ich denke, man nimmt die Menge und verschiebt die Elemente innerhalb der Menge so lange, bis keine mehr übrig sind und iteriert gleichermaßen als counter..)

liebe Grüße und vielen Dank.
Zeige Beiträge 1 bis 1 von 1 Treffern