Zum Inhalt springen

C# Array mit großen Zahlen initialisieren


Empfohlene Beiträge

Geschrieben

Holla.

Ich möchte in C# einen Array mit sehr großen Zahlen initialisieren. Die Anzahl der Elemente ist so groß, dass sie nur noch in einen UInt64 passt. Bei der Initialisierung gibt es aber eine Exception die besagt das der Wert zu groß sei.

- Mit welchen Datentyp wird ein Array initialisiert?

- Wie groß ist die maximale Anzahl der Elemente eines Arrays?

- Wie kann ich mehr Elemente bekommen?

Ich hoffe Ihr könnt mir helfen, vielen Dank im Voraus.

P.S. Wo kann ich erfahren wie man generell Groß-Zahl-Arithmetik in C# verwenden kann?

Smash

Geschrieben

Wie groß soll das Array denn werden? ò.Ó

Ich weiß grade gar nicht, ob der C#-Compiler die maximal größe des Arrays überprüft. Scheint so. Ich würde die Begrenzung glaub ich am Speicher sehen. ;)

- Wie kann ich mehr Elemente bekommen?

Mehrdimensionale Arrays.

Geschrieben

Danke für deine Antwort.

Also es geht um den Bereich Primzahlen. :bimei:eek:D:old(Entschuldigung, hab getrunken)

Ich hab momentan verschiedene Aufgaben. Z.B. eine Zahl mit vielen stellen zu faktorieren.

Das Problem mit dem Array hatte ich allerdings bei einer Aufgabe zum RSA-Verfahren. Ich wollte einen bool Array mit vielen Elementen, die mit true / false festlegen ob eine Zahl in frage kommt (zum Teilen ohne Rest...).

Ich stelle gerade fest, dass ich natürlich ein kleineres Array bräuchte, wenn ich nur infragekommende Zahlen direkt hineinschreiben würde. Ich werd die Strategie mal überdenken.

Aber generell bleiben die Fragen trotzdem offen und interessant. So weit ich weiß gibts in Java Großzahl-Arithmetik!? Und ich fürchte, dass mir dabei auch keine mehrdimensionalen Arrays helfen. Oder doch?

Geschrieben

Eben ich würd es so lösen, wie du schon beschrieben hast.

Array mit 0/1 als Indizes und dort dann die Zahlen reinschreiben.

Allerdings kannst du ja eig. quasi alle zahlen, die false sind verwerfen, falls nicht gebraucht. Dann reduziert sich die Speicherlast weiter.

Habe grade mal ein bisschen gegooglet.

Der Index eines Arrays muss immer ein ordinaler Typ mit einem Wertebereich von maximal 2 GB sein. Damit wird die maximale Größe eines Arrays beschränkt.
Quelle

Mit freundlichen Grüßen,

Cadpax

Geschrieben

Es wird aus Deiner Frage nicht ganz klar, ob Du ein Array eines Datentyps benötigst, der sehr große Zahlenwerte aufnehmen kann, oder ob Du ein Array mit sehr vielen Elementen (Einträgen) erstellen möchtest.

  • 1 Jahr später...

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...