Cela fait environ six mois que j'ai commencé à écrire du code python, et je me suis habitué à penser aux algorithmes, alors quand j'ai écrit le code de la séquence de Fibonacci et marmonné sur Twitter, d'un OB de lycée "Fibonatch va souvent à la formation et aux examens, il est donc préférable de pouvoir écrire dans différentes langues." Depuis que j'ai reçu les conseils, j'ai décidé de l'afficher dans un langage autre que python, et dans le processus j'ai décidé de découvrir les caractéristiques de chaque langage.
** Méthode d'affichage ** Je vais omettre l'explication sur la séquence de nombres de Fibonacci. Si vous ne savez pas, google (lancer rond) La colonne numérique à afficher doit commencer par [1,1], saisir une valeur numérique, et si elle est égale ou inférieure à 2, elle sera affichée sous la forme [1,1]. S'il est égal ou supérieur à 2, la séquence de nombres [1,1, ~~, n] de la valeur numérique d'entrée est sortie.
python
001.py
l = [1,1]
i = int(input("Veuillez saisir la longueur de la colonne numérique"))
if i < 2:
print(l)
else:
for f in range(2,i):
l.append(l[f-1]+l[f-2])
print(l)
Je pense qu'il est plus facile d'écrire des relations de séquence que dans d'autres langues.
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("Veuillez saisir la longueur de la colonne numérique que vous souhaitez rechercher\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;
}
}
}
}
Je n'ai pas beaucoup étudié Java, donc c'est probablement fou. La méthode consiste à afficher n3, qui est la somme de n1 et n2, puis de remplacer chaque nombre.
C++
001.cpp
#include <stdio.h>
int main(void) {
int x = 2;
int i[255] = { 1, 1 };
printf("Entrez le numéro dans la colonne numérique que vous souhaitez trouver");
scanf_s("%d", &x);
if (x < 3) {
printf("%d %d", i[0], i[1]);
}
else if (255 < x)
printf("Une valeur supérieure à la valeur spécifiée a été saisie");
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;
}
J'ai essayé de construire cela en fonction de la méthode python, mais c ++ a une restriction selon laquelle la longueur du tableau doit être décidée dès le début, donc j'étais assez ennuyé. J'ai essayé une méthode pour faire correspondre la valeur maximale avec la valeur saisie, mais cela n'a pas fonctionné, alors j'ai abandonné.
*** Ce que j'ai trouvé après avoir écrit *** ・ Python est plus facile que les autres langages
・ Je pense que ce sera un peu plus facile à écrire si je sais comment déterminer la valeur maximale d'un tableau avec des variables en C ++.
・ À l'avenir, j'aimerais pouvoir écrire dans différentes langues telles que javascript julia, que j'ai commencé à toucher.
・ Je pense qu'il existe un moyen de rendre le code C ++ et java encore plus facile, donc je veux étudier et améliorer la qualité du code.