[PYTHON] Versuchen Sie, die Fibonacci-Sequenz im Namen der Algorithmuspraxis in verschiedenen Sprachen anzuzeigen

Es ist ungefähr ein halbes Jahr her, seit ich angefangen habe, Python-Code zu schreiben, und ich habe mich daran gewöhnt, über Algorithmen nachzudenken. Als ich den Code für die Fibonacci-Sequenz schrieb und auf Twitter murmelte, von einem OB der Oberstufe "Fibonatch geht oft zu Schulungen und Prüfungen, deshalb ist es besser, in verschiedenen Sprachen schreiben zu können." Da ich den Rat erhalten habe, habe ich beschlossen, ihn in einer anderen Sprache als Python anzuzeigen, und dabei habe ich beschlossen, die Merkmale jeder Sprache zu entdecken.

** Anzeigemethode ** Ich werde die Erklärung zur Fibonacci-Zahlenfolge weglassen. Wenn Sie es nicht wissen, googeln Sie (runder Wurf) Die anzuzeigende Zahlenspalte beginnt mit [1,1], gibt einen numerischen Wert ein und wird mit 2 oder weniger als [1,1] angezeigt. Wenn es 2 oder mehr ist, wird die Zahlenfolge [1,1, ~~, n] des eingegebenen numerischen Werts ausgegeben.

python

001.py


l = [1,1]
i = int(input("Bitte geben Sie die Länge der Zahlenspalte ein"))
if i < 2:
    print(l)
else:
    for f in range(2,i):
        l.append(l[f-1]+l[f-2])
    print(l)

Ich denke, dass es einfacher ist, Sequenzbeziehungen zu schreiben als in anderen Sprachen.

Java

001.java


import java.io.InputStreamReader;
import java.util.Scanner;

public class _main_ {
    public static void main(String[] args){
        int n1 =1;
        int n2 =1;
        int n3;
        System.out.print("Bitte geben Sie die Länge der Nummernspalte ein, die Sie suchen möchten\n");
        Scanner scanner = new Scanner(System.in);
        int a = scanner.nextInt();
        if (2 < a){
            System.out.print(n1+" "+n2+" ");
            for(int x=2;x<a;x++){
                n3= n1 + n2;
                System.out.print(n3+" ");
                n1 = n2;
                n2 = n3;
            }
        }
    }
}

Ich habe nicht viel über Java gelernt, also ist es wahrscheinlich verrückt. Die Methode besteht darin, n3 auszugeben, was die Summe von n1 und n2 ist, und dann jede Zahl zu ersetzen.

C++

001.cpp


#include <stdio.h>
int main(void) {

	int x = 2;
	int  i[255] = { 1, 1 };
	printf("Geben Sie die Nummer in die Zahlenspalte ein, die Sie suchen möchten");
	scanf_s("%d", &x);
	if (x < 3) {
		printf("%d %d", i[0], i[1]);
	}
	else if (255 < x)
		printf("Es wurde ein Wert eingegeben, der höher als der angegebene Wert ist");
	else
	{
		for (int n = 2; n < x; n++) {
			i[n] = i[n - 2] + i[n - 1];
		}
		for (int v = 0; v < (sizeof(i) / sizeof(i[0]))-1; v++) {

			if (i[v] != 0)
				printf("%d ", i[v]);
			else
				break;
		}
	}
	return 0;
}

Ich habe versucht, dies basierend auf der Python-Methode zu erstellen, aber c ++ hat die Einschränkung, dass die Länge des Arrays von Anfang an festgelegt werden muss, daher war ich ziemlich verärgert. Ich habe versucht, den Maximalwert mit dem eingegebenen Wert abzugleichen, aber es hat nicht funktioniert, also habe ich aufgegeben.

*** Was ich nach dem Schreiben gefunden habe *** ・ Python ist einfacher als andere Sprachen

・ Ich denke, es wird etwas einfacher zu schreiben sein, wenn ich weiß, wie man den Maximalwert eines Arrays mit Variablen in C ++ bestimmt.

・ In Zukunft möchte ich in der Lage sein, in verschiedenen Sprachen wie Javascript Julia zu schreiben, die ich zu berühren begann.

・ Ich denke, es gibt eine Möglichkeit, C ++ - und Java-Code noch einfacher zu machen. Deshalb möchte ich die Qualität des Codes untersuchen und verbessern.

Recommended Posts

Versuchen Sie, die Fibonacci-Sequenz im Namen der Algorithmuspraxis in verschiedenen Sprachen anzuzeigen
Versuchen Sie, die Eisenbahndaten der nationalen Landnummern in 3D anzuzeigen
Numerische Darstellung von Tagen in verschiedenen Sprachen
Probieren Sie Cython in kürzester Zeit aus
Versuchen Sie, die kumulierte Rendite des Rollovers im Futures-Handel zu modellieren
Verschiedene Kommentare im Programm zu schreiben
Ich habe versucht, den Höhenwert von DTM in einem Diagramm anzuzeigen
Verschiedene Möglichkeiten, die letzte Zeile einer CSV-Datei in Python zu lesen
So testen Sie den Friends-of-Friends-Algorithmus mit pyfof
Versuchen Sie, die Bewegung des Sonnensystems zu simulieren
Ich möchte den Fortschritt in Python anzeigen!
[Django] Lassen Sie uns versuchen, den Teil von Django zu klären, der im Test irgendwie durch war
Beachten Sie, dass sich die Methode zum Veröffentlichen von Modulen in PyPI auf verschiedene Weise geändert hat.
So erhalten Sie den Variablennamen selbst in Python
Versuchen Sie, die Probleme des "Matrix-Programmierers" zu lösen (Kapitel 1).
Versuchen Sie es auf verschiedene Arten zu lösen (SAT, CSP)
Versuchen Sie, die Anzahl der Likes auf Twitter zu schätzen
So zeigen Sie mehrere Bilder einer Galaxie in Kacheln an
Versuchen Sie, den Inhalt von Word mit Golang zu erhalten
Implementierte den Algorithmus von "Algorithm Picture Book" in Python3 (Heap Sort Edition)
Darstellung von Fibonacci-Sequenzen mit Lambda-Ausdrücken in verschiedenen Sprachen
Versuchen Sie, die in Firefox gespeicherten Anmeldedaten zu entschlüsseln
Verringern Sie den Klassennamen der Anzeige des Erkennungsergebnisses der Objekterkennung
Um das Äquivalent von Rubys ObjectSpace._id2ref in Python zu tun
Python Open CV hat versucht, das Bild im Text anzuzeigen.
Anzeigen des regionalen Netzes des Government Statistics Office (eStat) in einem Webbrowser
[Super einfach! ] So zeigen Sie den Inhalt von Wörterbüchern und Listen einschließlich Japanisch in Python an
Implementierung der Fibonacci-Sequenz
HMAC in verschiedenen Sprachen
Versuchen Sie, COVID-19 Tokyo-Daten mit Python zu kratzen
So finden Sie die optimale Anzahl von Clustern für k-means
Versuchen Sie, die Funktionsliste des Python> os-Pakets abzurufen
Versuchen Sie, die Leistung des Modells für maschinelles Lernen / Regression zu bewerten
Ich habe versucht, mit TensorFlow den Durchschnitt mehrerer Spalten zu ermitteln
Versuchen Sie, verschiedene Informationen anzuzeigen, die für das Debuggen mit Python nützlich sind
Erleichtern Sie die Anzeige von Python-Modulausnahmen
Drucken Sie den Namen des Objekts direkt unter dem in Blender angegebenen Objekt
Implementierte den Algorithmus von "Algorithm Picture Book" in Python3 (Bubble Sort)
Versuchen Sie, die Leistung des Modells für maschinelles Lernen / Klassifizierung zu bewerten
Versuchen Sie, die Genauigkeit der Twitter-ähnlichen Zahlenschätzung zu verbessern
Versuchen Sie, die Probleme / Probleme des "Matrix-Programmierers" zu lösen (Kapitel 0-Funktion)
Versuchen Sie, den Betrieb von Netzwerkgeräten mit Python zu automatisieren
Zeigen Sie den Fahrplan des Morioka-Busortungssystems in Pythonista an
Versuchen Sie, die in COTOHA beliebten Schlüsselwörter zu extrahieren
Versuchen Sie, eine multimodale Verteilung mithilfe des EM-Algorithmus zu modellieren
Implementierte den Algorithmus von "Algorithm Picture Book" in Python3 (Selective Sort)
Versuchen Sie, die verstümmelten Zeichen im angehängten Dateinamen mit Python zu entschlüsseln
Ich habe N-Queen in verschiedenen Sprachen implementiert und die Geschwindigkeit gemessen
Um den Namen des Primitivs usw. zu erhalten, das unmittelbar zuvor generiert wurde
Ein Befehl zum Auflisten aller Dateien in der Reihenfolge des Dateinamens
Versuchen Sie, Merkmale von Sensordaten mit CNN zu extrahieren
Versuchen Sie, verschiedene Bedingungen zu ändern, um "1000 Personen im Raum zu sammeln und weiterhin zufälligen Gegnern Geld zu geben".
[PyQt x pySerial] Zeigen Sie im Kombinationsfeld eine Liste der mit dem PC verbundenen COM-Ports an