[GO] Lassen Sie uns das arithmetische Lehrmittel "Jamaica" ❗️ Vol.01 "Hinweise zum Anzeigen von Bildern in Python" reproduzieren.

Einführung

In dieser Serie geht es um ein bestimmtes ** Rechenwerkzeug "Jamaica" </ font> ** Es ist eine Aufzeichnung des Kampfes um die Erreichung der folgenden Ziele.

** ▶ ︎ </ font> 1. ** *** Sie können das Spiel "Jamaica" mit einem Programm ausführen, das die Bildanzeige verwendet. *** *** ** 2. ** *** Erstellen Sie ein Programm, um die Existenz und den Inhalt von Lösungen für eine beliebige Kombination von Würfeln in "Jamaika" zu suchen und zu präsentieren. *** ***

Frage 1: Was ist das arithmetische Lehrmittel "Jamaica" </ font>?

A1. "Jamaica" wird als arithmetisches Lehrmittel mit dem Thema "Zahlenspiel" unter Verwendung von Würfeln </ font> verkauft.

■ *** Dies ist ein allgemeines Produkt, das auch auf Online-Shopping-Websites wie Amazon und Yahoo! Shopping verkauft wird. *** *** ➡︎ Klicken Sie hier, um zur Amazon-Verkaufsseite zu gelangen (https://www.amazon.co.jp/dp/4902756161/ref=cm_sw_r_tw_dp_U_x_XrEPEbCJ5VRST). ➡︎ Das Bild finden Sie in der folgenden Abbildung (zitiert von der obigen Seite). qiita1_jamaica_red.jpg ➡︎ Detaillierte Informationen wie Herausgeber finden Sie in der folgenden Tabelle (siehe oben).

Kategorie/ Category Information/ Information
der Herausgeber/ publisher Tomoe Berechnungstafel(2006/12/8)
Sprache/ language japanisch/ Japanese
ISBN-10 4902756161
ISBN-13 978-4902756166
Veröffentlichungsdatum/ release date 2006/12/8
Packungsgröße/ packing size 13 × 10.6 × 2 cm

■ *** Es gibt zwei Arten von Würfeln, Weiß und Schwarz, und 5 und 2 sind enthalten. *** *** ➡︎ Ein weißer Würfel x 5 und ein schwarzer Würfel x 1 sind am Ringteil angebracht, und ein schwarzer Würfel x 1 ist am Mittelteil angebracht.

Farbe/ Color Menge/ amount Nummern aufgelistet/ Numbers
Weiß/ white 5 Stücke/ 5 dice 1, 2, 3, 4, 5, 6
schwarz/ black 1 Stück/ 1 dice 1, 2, 3, 4, 5, 6
schwarz/ black 1 Stück/ 1 dice 10, 20, 30, 40, 50, 60

Frage 2: Wie spielt Jamaika </ font>?

A2. Führen Sie vier Regeln </ font> aus, indem Sie jeden der weißen Würfel x 5 Zahlen einmal verwenden, um die Summe der schwarzen Würfel x 2 Zahlen zu erhalten.

Wenn zum Beispiel der weiße Würfelwurf (1,2,3,5,5) und der schwarze Würfelwurf (10,6) ist, Sie können alle Würfel der weißen Würfel addieren, um die Gleichung 1 + 2 + 3 + 5 + 5 = 10 + 6 zu erstellen.

qiita002_jamaica_sample_sizedown.png

■ *** Weiße Würfel x 5 Zahlen können jeweils nur einmal verwendet werden. *** *** ➡︎ Wenn der weiße Würfelwurf beispielsweise (2,4,5,3,3) ist, kann er zur Berechnung verwendet werden. 2 ist 1 Mal, 3 ist 2 Mal, 4 ist 1 Mal, 5 ist 1 Mal. Nicht mehr verwenden. (Sie können 2 nicht zweimal oder 3 dreimal verwenden.) ➡︎ Natürlich ist ** "Nicht die angegebene Anzahl von Malen verwenden" auch ein Gesetz **. (Im obigen Beispiel können Sie 3 nicht nur einmal verwenden.)

■ *** Vier Regeln sind Addition, Subtraktion, Multiplikation und Division </ font>. *** *** ➡︎ ** "Addition" ** </ font> ist "Addition", dh ** "Addition" **. Berechnen Sie beispielsweise die Summe (Ergebnis der Addition) wie 2 + 3 = 5. </ font> ➡︎ ** "Reduzieren" ** </ font> ist "Reduzieren", dh ** "subtrahieren" **. Berechnen Sie beispielsweise die Differenz (Ergebnis der Subtraktion) wie 5-2 = 3. </ font> ➡︎ ** "Multiplizieren" ** </ font> ist "Multiplikator", dh ** "Multiplizieren" **. Berechnen Sie beispielsweise das Produkt (Ergebnis der Multiplikation) wie 3 × 4 = 12. </ font> ➡︎ ** "Ausschluss" ** </ font> ist "Division", dh ** "Division" **. Berechnen Sie beispielsweise den Quotienten (Teilungsergebnis *) wie 4/2 = 2. </ font>

  • Es gibt Regeln, die nur teilbare Operationen zulassen, dh Regeln, die keine irreduziblen Brüche zulassen, und Regeln, die irreduzible Brüche zulassen. [1] ** Im Fall einer Regel, die keine irreduziblen Brüche zulässt ** Wenn die weißen Würfel rollen (2,4,6,3,5), können Sie 6/3 = 2 berechnen, aber Das Ergebnis 6/4 = 3/2 ist nicht verfügbar. [2] ** Im Fall einer Regel, die Dinge erlaubt, bei denen es sich um kontrahierte Brüche handelt ** Wenn die weißen Würfel würfeln (2,4,6,3,5), kann nicht nur die Berechnung 6/3 = 2 durchgeführt werden, sondern auch Das Ergebnis 6/4 = 3/2 ist ebenfalls verfügbar.
  • ** Einige Würfelwürfe können nicht ohne Verwendung der irreduziblen Fraktionen gelöst werden. ** </ font> Beispiel) Wenn die weißen Würfel (2,2,4,4,6) und die schwarzen Würfel (30,3) würfeln Die Gleichung {(2-2 / 4) + 4} x 6 = 30 + 3 gilt. </ font>

■ *** Die vier Betriebsregeln können in beliebiger Reihenfolge ausgeführt werden. *** *** ➡︎ Sie können die beiden Zahlen zuerst addieren und dann mit einer anderen Zahl multiplizieren. Mit anderen Worten, Sie können überall beliebig oft Klammern verwenden. Beispiel) Wenn die weißen Würfel (3,6,4,4,1) und die schwarzen Würfel (20,6) würfeln Die Gleichung {(3 + 6) + (4 × 4)} + 1 = 20 + 6 gilt. </ font>

§1. "Jamaica" </ font> reproduzieren

Seit ich ein Spielzeug namens Jamaica gekauft habe, denke ich, dass es Spaß macht, es mit der realen Sache zu machen, aber nach und nach *** "Ich möchte mit Code reproduzieren ..." *** *** "Ich möchte den Bildschirm eines Online-Meetings gemeinsam nutzen ..." *** Ich bin gekommen, um das zu glauben.

Mit dem Wunsch, die erste Qiita zu veröffentlichen, wurde diese Serie geboren.

Der Serientitel lautet ** Reproduzieren wir das arithmetische Lehrmittel "Jamaica" </ font> ❗️ ** ist.

Schauen Sie sich die Aufzeichnungen von Programmieranfängern an, die Schwierigkeiten haben, Jamaika neu zu erstellen.

* "Hinweise" * * [1] Diese Serie ist eine Jupyter-Notizbuchdatei (.ipynb), die durch Ausprobieren mit einem Dienst namens Google Colabatory erstellt wurde. * * * [2] Die Python-Version ist 3.6.9. Dies wurde mit dem folgenden Code bestätigt. * *

confirmPythonVer


import platform
print('python ' + platform.python_version())
> python 3.6.9

↑↑↑ * Die Referenz-URL des obigen Codes stammt von hier * </ font> [^ ref001] * [3] Andere erforderliche Bibliotheken werden bei jeder Verwendung beschrieben. * </ font>

Task.001 "Würfelwurf als Bild anzeigen"

■ Im realistischen Jamaika werden insgesamt 7 zweifarbige Würfel verwendet. ■ Die Würfelfarben und -zahlen sind wie folgt aufgeteilt. (Erneut veröffentlichen)

Farbe/ Color Menge/ amount Nummern aufgelistet/ Numbers
Weiß/ white 5 Stücke/ 5 dice 1, 2, 3, 4, 5, 6
schwarz/ black 1 Stück/ 1 dice 1, 2, 3, 4, 5, 6
schwarz/ black 1 Stück/ 1 dice 10, 20, 30, 40, 50, 60

■ Ich möchte das Ergebnis dieser Würfel als Bild anzeigen.

Schritt 1. Bereiten Sie ein Bild der Würfel vor. (Dieses Mal habe ich es mit Microsoft PowerPoint erstellt. Die Erweiterung lautet .png.) Schritt 2. Speichern Sie das Bild der Würfel im angegebenen Ordner von Google Drive. '/content/drive/My Drive/Mathematics/MathProgramming/MathPro-Jamaica/Jamaica-figs/' Schritt 3. Versuchen Sie, jedes der vorbereiteten Würfelbilder anzuzeigen. ↓ ↓ ↓ Bestimmte Dateinamen finden Sie weiter unten.

Dateiname:'dice-' 'Farbe(Weiß=w,schwarz=b)' '-' 'Nummer 1-6, 10-60)' '.png'
Beispiel) dice-w-4.png =4 weiße Würfel
Beispiel) dice-b-20.png =20 schwarze Würfel

** _____ [Referenzartikel] _____ ** [^ ref002] Task001 | Anzeigen von Bildern in Python ➡︎ Die grundlegende Grammatik der Bildanzeige wird hier zitiert. [^ ref003] Task001 | Bilder in einem Raster anordnen und Achsenbeschriftungen löschen ➡︎ Ein Artikel mit dem Code, der die beste Möglichkeit zu sein scheint, mehrere Bilder nebeneinander in einer Liste anzuzeigen.

task001_black10


import matplotlib
import matplotlib.pyplot as plt
import matplotlib.image as mpimg

wheredrive = '/content/drive/My Drive/Mathematics/MathProgramming/MathPro-Jamaica/'
wherefigs = wheredrive + 'Jamaica-figs/'
whereimg = wherefigs + 'dice-b-10.png'
print('Bilddateireferenz:',whereimg)
img = mpimg.imread(whereimg)
imgplot = plt.imshow(img)
plt.axis('off') #'on'Bei Einstellung werden für jedes Bild zusätzlich vertikale und horizontale Gitterachsen angezeigt.
>Bilddateireferenz:/content/drive/My Drive/Mathematics/MathProgramming/MathPro-Jamaica/Jamaica-figs/dice-b-10.png

qiita003_jamaica_task001_black10.png

task001_white1to6


import numpy as np

row = 1 #Anzahl der Zeilen in der Rahmenmatrix, in denen das Bild angezeigt werden soll
col = 6 #Anzahl der Spalten in der Rahmenmatrix, in denen das Bild angezeigt werden soll
plt.figure(figsize=(10,10)) #Festlegen von Parametern zum Anpassen der Größe jedes Bilds
for num in range(row * col):
    plt.subplot(row, col, num+1) #Erstellen Sie einen Rahmen, um das Bild in dieser Schleife anzuzeigen
    imgname = 'dice-w-' + str(num+1) + '.png'
    whereimg = wherefigs + imgname
    img = mpimg.imread(whereimg)
    imgplot = plt.imshow(img)
    plt.axis('off') #'on'Bei Einstellung werden für jedes Bild zusätzlich vertikale und horizontale Gitterachsen angezeigt.

qiita003_jamaica_task001_white1to6.png

Task.002 "Anzeigen von Würfelwurfbildern nach Zufallszahlen"

■ Würfeln Sie im realistischen Jamaika nach dem Zufallsprinzip. ■ Das Würfeln von insgesamt 7 Würfeln erfolgt durch Ausgabe von Zufallszahlen. Vorgehensweise 1. Bereiten Sie 7 Variablen vor, die zufällig positive ganze Zahlen von 1 oder mehr und 6 oder weniger ausgeben. Schritt 2. Verknüpfen Sie die 1. bis 5. Ergebnisse in der ersten Hälfte mit der Bildanzeige der weißen Würfel. Schritt 3. Verknüpfen Sie das 6. Ergebnis mit der Bildanzeige der zweistelligen schwarzen Würfel. Schritt 4. Verknüpfen Sie das 7. Ergebnis mit der Bildanzeige eines 1-stelligen schwarzen Würfels.

** _____ [Referenzartikel] _____ ** [^ ref004] Task002 | zufällig, randrange, randint usw. zum Generieren zufälliger Brüche / Ganzzahlen in Python ➡︎ Sie können verschiedene Module sehen, die sich auf die Zufallszahlengenerierung beziehen, daher ist es gut zu organisieren. [^ ref005] Task002 | Randint, der verschiedene Würfel machen kann ➡︎ Jeder prüft, ob die Ereigniswahrscheinlichkeit der Würfel, die ihn interessieren, gleich sicher ist.

task002_diceroll


row = 1 #Anzahl der Zeilen in der Rahmenmatrix, in denen das Bild angezeigt werden soll
col = 7 #Anzahl der Spalten in der Rahmenmatrix, in denen das Bild angezeigt werden soll
dices = np.random.randint(1,7,row * col) #Die erste Variable ist der Minimalwert der Bevölkerung und die zweite Variable ist der Maximalwert der Bevölkerung.+Die 1. und 3. Variable geben die Anzahl der auszugebenden Zufallszahlen an
print('Ergebnisse von 7 Würfeln',dices)

plt.figure(figsize=(20,20))
for index in range(row * col):
  plt.subplot(row, col, index+1)
  if index < 5: #Bis zu 5 Würfel (wenn der Index 0 oder mehr und 4 ist) sind weiß und 1 Stelle
    imgname = 'dice-w-' + str(dices[index]) + '.png'
    whereimg = wherefigs + imgname
    img = mpimg.imread(whereimg)
    imgplot = plt.imshow(img)
    plt.axis('off')
  elif index < 6: #Der 6. Würfel (wenn der Index 5 ist) ist schwarz und hat 2 Ziffern
    imgname = 'dice-b-' + str(dices[index]) + str(0) + '.png'
    whereimg = wherefigs + imgname
    img = mpimg.imread(whereimg)
    imgplot = plt.imshow(img)
    plt.axis('off')
  elif index < 7: #Der 7. Würfel (wenn der Index 6 ist) ist schwarz und 1 Stelle
    imgname = 'dice-b-' + str(dices[index]) + '.png'
    whereimg = wherefigs + imgname
    img = mpimg.imread(whereimg)
    imgplot = plt.imshow(img)
    plt.axis('off')
  else:
    continue
>Ergebnisse von 7 Würfeln[6 5 1 4 2 4 3]

qiita004_jamaica_task002_diceroll.png

Vorschau beim nächsten Mal

Dieses Mal habe ich hauptsächlich ein Memorandum darüber geschrieben, wie man ein Bild in Python anzeigt und wie man einen zufälligen Würfelwurf simuliert.

Das nächste Mal werde ich ein Memo schreiben, um diese Codes nach Funktionsdefinition zu organisieren.

Der Titel lautet ** vol.02 "Hinweise zum Erstellen von Funktionen in Python" **.

Zusammenfassung des Referenzartikels

[^ ref001]: Demo | Überprüfen Sie standardmäßig die Versionsinformationen der in colaboratory enthaltenen Bibliothek [^ ref002]: Task001 | Anzeigen von Bildern in Python [^ ref003]: Task001 | Bilder in einem Raster anordnen und Achsenbeschriftungen löschen [^ ref004]: Task002 | Zufällige Brüche / Ganzzahlen, die von Python, Random, Randrange, Randint usw. generiert wurden [^ ref005]: Task002 | Randint, der verschiedene Würfel machen kann

Recommended Posts