Frage

Ich habe zwei zufällige Sätze von Matrizen zu erzeugen, Jeweils 3 Ziffern im Bereich von 2 bis 10

so

Matrix 1: 994878129121

Matrix 2: 272794378212

die Zahlen in beiden Matrizen müssen größer sein als 100 und weniger als 999

den Mittelwert für beide Matrizen hat im Verhältnis von 1: 2 oder 2: 3, was immer der Benutzer gibt Constraint

meine mathematischen Fähigkeiten sind so eine Art beschränkt, irgendwelche Ideen, wie ich tun, damit dies geschieht?

War es hilfreich?

Lösung

Um dies zu tun, müssen Sie wissen, wie viele Zahlen in jeder Liste sind. Ich bin von Ihrem Beispiel unter der Annahme, dass es vier Zahlen in jedem.

  1. Füllen Sie die erste Liste mit vier Zufallszahlen.
  2. Berechnen Sie den Mittelwert der ersten Liste.
  3. Multiplizieren Sie den Mittelwert von 2 oder 3/2, je nachdem, was die Benutzereingabe. Dies ist die erforderlichen Mittel der zweiten Liste.
  4. Multiplizieren von 4. Dies ist die erforderliche Gesamt der zweiten Liste.
  5. generieren 3 Zufallszahlen.
  6. subtrahiert die Summe der drei Zahlen in Schritt 5 von den gesamten in Schritt 4 Dies ist die vierte Nummer für die zweite Liste.
  7. Wenn die Zahl in Schritt 6 nicht im richtigen Bereich ist, den Vorgang ab Schritt 5.

Beachten Sie, dass die letzte Zahl in der zweiten Liste nicht wirklich zufällig ist, da es auf den anderen Werten in der Liste basiert.

Andere Tipps

Sie haben eine Reihe von Zufallszahlen, s1.

s1= [ random.randint(100,999) for i in range(n) ]

Für einen anderen Satz, s2, ein anderes Mittel, um es einfach bekommen hat einen anderen Bereich haben. Entweder Sie wählen Werte zufällig aus einem anderen Bereich, oder Sie Zufallswerte filtern einen anderen Bereich zu erhalten.

Egal, wie viele zufällige Zahlen, die Sie aus dem Bereich wählen 100-999, ist der Mittelwert immer nur um 550. Die Wahrscheinlichkeit, einen anderen Wert zu sein ist genau die Normalverteilung Wahrscheinlichkeiten auf beiden Seiten der Mittelwert.

Sie können nicht ein radikal anderen Mittel mit den Werten aus dem gleichen Bereich ausgewählt haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top