C'est pourquoi l'homme qui déteste les mathématiques visant Dieu a régulièrement revu les mathématiques ... N'y a-t-il pas un symbole mathématique? D'une manière ou d'une autre, ça. Je ne sais pas.
Je suis venu avec ça. Si vous ne comprenez pas les symboles mathématiques, vous devriez essayer de les implémenter par programme.
Pour le moment, j'ai oublié la signification de Σ, alors j'ai décidé de l'implémenter moi-même.
Même si vous étudiez que l'objectif n'est pas clair, cela ne va pas du tout. La signification de Σ est la somme, c'est-à-dire créer une liste (tableau) de nombres et obtenir la *** valeur totale ***.
Par exemple, la valeur totale de [1,2,3,4,5,6,7,8,9,10] est 55, mais ce sera le symbole utilisé pour écrire cette valeur totale dans une lettre. Non je comprends. Mais alors, vous devez écrire le total de 1 à 10.
Ensuite, si la liste des nombres est [2,4,6,8,10]. Ce sera "la somme des valeurs paires seulement de 1 à 10", mais c'est long. Il semble que plus les conditions sont compliquées, plus elles sont difficiles à lire. Personnellement, c'est plus facile à lire si vous l'écrivez.
Quoi qu'il en soit, Σ apparaît ici.
Par exemple, la valeur totale de [1,2,3,4,5,6,7,8,9,10] peut être exprimée comme ceci.
En d'autres termes, cela signifie qu'en répétant ** 1 à 10, les valeurs de 1 à 10 sont ajoutées au tableau comme à chaque itération, et finalement la somme de tous les éléments du tableau est calculée **. Dans mon cas, si j'essaie de trouver le total soudainement, j'ai une réaction allergique, alors calmez-vous d'abord et faites d'abord quelques lignes. Alors, implémentons un tableau (liste) de 1 à 10 avec python.
array = []
for i in range(1, 11):
array.append(i)
Ouais, pas de problème du tout. Après cela, si vous voulez trouver la valeur totale
sum(array)
# => 55
Vous devriez pouvoir trouver la valeur totale en écrivant.
Si vous le déposez dans le code, vous pouvez vous le permettre, mais si c'est Σ, cela semble sans signification pendant un moment. ~~ C'est parce que les symboles mathématiques sont habillés et utilisent des symboles et des lettres illisibles. ~~ Je pense que cela en dérive en fait ... Remplissons la différence entre ce code python général et le symbole Σ.
J'ai essayé de coder par couleur des variables et des valeurs qui ont le même rôle. Cela rend un peu plus facile à comprendre. "Jusqu'où répéter" est 11 en raison des spécifications de la fonction range (), mais cela ne peut pas être aidé.
Dans ce cas, k et moi jouent le même rôle. Unifions quand même les noms des variables.
array = []
for k in range(1, 11):
array.append(k)
Cela rend un peu plus facile à comprendre.
Ce serait bien si les noms de variables pouvaient être facilement compris, tels que "start_from", "end" et "element", sans utiliser k, n ou a. En premier lieu, Σ lui-même semble être la lettre grecque Σ de S dans «Summation» qui signifie la somme en anglais. Alors Summation est très bien. Pourquoi l'abréviez-vous? En premier lieu, le mot «sommation» vient du latin, non? Pourquoi utilisez-vous des lettres grecques? C'est cool quand même!
Revenons maintenant à l'histoire. Le côté droit de Σ était écrit «k» plus tôt, mais une autre formule peut venir comme ceci.
C'est assez simple dans le code. C'est une bonne idée de considérer cela comme une indication de la façon dont les valeurs que vous souhaitez inclure dans la liste seront éventuellement traitées.
array = []
for k in range(1, 11):
array.append(k) #Correspond à la partie k ici
Donc, dans cet exemple
array = []
for k in range(1, 11):
array.append(2 * k)
Vous pouvez l'écrire comme ça.
Je n'ai affaire qu'à des expressions très simples, mais je pense que le reste peut s'appliquer à cela.
Maintenant que je connais les bases, je vais l'ajuster d'un point de vue programmatique. Tout d'abord, il est difficile d'écrire à chaque fois, alors faisons-en une fonction.
Ce sera comme ça s'il est facilement converti en fonction. La valeur de retour tente de renvoyer la somme correctement.
def sigma():
array = []
for k in range(1, 11):
array.append(2 * k)
return sum(array)
Si cela reste tel quel, il sera inflexible, alors assurez-vous de recevoir la valeur de l'extérieur.
def sigma(k, n):
array = []
for k in range(k, (n + 1)):
array.append(2 * k)
return sum(array)
#Exemple d'appel de fonction
print(sigma(1, 10))
# =>110 car c'est la somme de 1 à 10 multipliée par 2.
Recevons également la cérémonie de l'extérieur. J'utiliserai la formule lambda ici.
def sigma(k, n, func):
array = []
for k in range(k, (n + 1)):
array.append(func(k, n))
return sum(array)
#Exemple d'appel de fonction
print(sigma(1, 10, lambda k, n : 2 * k))
# =>110 car c'est la somme de 1 à 10 multipliée par 2.
J'ai deviné ici. Oh, peut-être la notation d'inclusion de liste ...
array = [2 * k for k in range(1, 11)]
print(sum(array))
Je vois......
print(sum([2 * k for k in range(1, 11)]))
Il s'est réduit à une seule ligne. Je savais que la vitesse d'exécution était rapide, mais la notation d'inclusion de liste est également facile dans ce sens. Après cela, vous pouvez également insérer une branche conditionnelle!
Si vous pouvez écrire un programme mais ne pouvez pas faire de mathématiques, vous pouvez essayer d'écrire un programme! Je ne pensais pas que Σ était utile, mais au moins je l'ai compris, et j'ai trouvé que la notation d'inclusion de liste était merveilleuse (rires).
Recommended Posts