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...

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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...