Problem mit Bitfolgen

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Kann mir jemand Folgendes erklären:

"Ein Algorithmus zur Bestimmung von Primzahlen ist zu implementieren, wobei die Liste von Primzahlen durch eine Folge von Bits, die in einem Array von int-Zahlen stehen, zu realiseiren ist.
Jede int-Zahl besteht aus 32 Bit und kann dadurch 32 natürliche Zahln repräsentieren."

Kann mir jemand sagen, was der zweite Satz bedeutet?
Wenn ich die ersten 11 Primzahlen nehme, dann sieht die Bitfolge doch so aus: 01010000010001010001010001010110 (ist an der Stelle x eine 1, dann ist x eine Primzahl; so weit klar!)
Wie soll ich diese Folge nun abspeichern? Als dazugehörige Dezimalzahl? Und dann?

MfG

Gast
 

DTR

Bekanntes Mitglied
Hallo,

so wie ich das Verstanden habe bedeutet

  • 00000000000000000000000000000001 = 1
    00000000000000000000000000000010 = 2
    00000000000000000000010000000000 = 11
Das würde 00000000000000000001000100010001 dann bedeuten 1, 5, 9, 13 sind Primzahlen. Da gibt es dann natürlich noch mehr, die dir der Algorithmus finden wird.
 

thE_29

Top Contributor
00000000000000000000010000000000 = 11
11 ist das aber net ;) sondern 1024

also so schwer sieht das net aus, eine Primzahl hat glaub ich immer n 1drinnen ;)

1,3,5,7,11,13,17,19,23,27,29 sind zum Bsp Primzahlen

binär sehen die so aus

1 = 1
11 = 3
101 = 5
111 = 7
1001 = 9
1011 = 11
1101 = 13
10001 = 17
10011 = 19
10111 = 23
11011 = 27
11101 = 29


Also ich würde sagen ne Primzahl hat immer an der 1ten Stelle ne 1 ;) Aber das sind halt viele Zahlen, weiter logische Zusammenhänge musst selber suchen ;)
 
G

Guest

Gast
Hallo!
So weit verstehe ich es auch schon. Doch die Frage ist: der Algorithmus liefert mir z.B. die 13. Wie soll ich diese 13 dann speichern?! Ich vermute, dass man in der int-Zahl (32Bit) an der Stelle 13 eine 1 machen soll, aber wie?
Wie ändere ich die Bits?

MfG

der diese Frage gestellt hat
 

thE_29

Top Contributor
Du hast die Bits in einem Array abgespeichert (oben Angabe) also einfach nur die Stelle ändern.


ansonsten mit logischen verknüpfungen oder verschieben (das hatte ich ein halbes jahr in c, weiß aber nima viel davon - war extremst blöd..)
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben