Python

Articles ou exercices avec Python

Matrices bistochastiques, épisode 9

Soit {B_{n}\in\mathcal{M}_n(\mathbb{R})} la matrice de terme général {(b_{i,j})_{1\le i,j\le n}} définie par:
{\begin{cases}b_{i,i+1}=b_{i+1,i}=\dfrac{1}{2}\text{\ si }1\le i\lt n\\b_{1,1}=b_{n,n}=\dfrac{1}{2},\text{\ et\ }b_{i,j}=0\text{\ dans les autres cas}\end{cases}}On diagonalise B_n, on étudie la limite de ses puissances, et on illustre les résultats avec l’aide du langage Python.

Matrices bistochastiques, épisode 1

Soit {A=(a_{i,j})_{0\le i,j\le n-1}} dans {\mathcal{M}_{n}(\mathbb{R})}.
On dit que A est {\mu}magique si la somme de chaque ligne et de chaque colonne vaut {\mu}.
On dit que {A} est bistochastique si A est {1}-magique et si les {a_{i,j}} sont positifs ou nuls.
On note {\mathcal{B}_n(\mathbb{R})} l’ensemble des matrices bistochastiques d’ordre n.
On note {\mathcal{P}_n(\mathbb{R})\subset\,\mathcal{B}_n(\mathbb{R})} l’ensemble des matrices de permutations {P_{\sigma}} d’ordre n.
On illustre ici ces notions avec Python.

La comète de Goldbach

La conjecture de Goldbach affirme que tout entier pair {n\ge4} peut s’écrire comme la somme de deux entiers premiers. On appelle comète de Goldbach le nuage des points {(k,g(k))}, où {k} décrit les entiers pairs dans un certain intervalle {[4,n]} et où {g(k)} désigne le nombre de façons d’écrire {k} comme la somme de deux nombres premiers. Dans cet article, on écrit les fonctions Python utiles pour produire le tracé de cette comète.

Inverser des matrices rationnelles avec Python

Si une matrice carrée inversible A est à coefficients entiers (ou plus généralement rationnels), alors son inverse est à coefficients rationnels.
Avec Python, le calcul de l’inverse de A provoque un passage en mode float.
Dans ce cas, retrouver l’expression exacte (sous forme de rationnels) de A^{-1}.

Euler 034

Le nombre {145} est la somme des factorielles de ses chifres: {145 = 1! + 4! + 5! = 1 + 24 + 120}.
Trouver tous les entiers {n} ({n\ge1}) qui ont cette propriété.

Euler 033

Trouver les couples {(n,d)} avec {n \lt d}, s’écrivant {n=xy} et {d=yz} en base 10, et telle que {\dfrac{n}{d}=\dfrac{xy}{yz}=\dfrac{x}{z}} (exemple {\dfrac{19}{95}=\dfrac{1}{5}}). On ne retiendra pas les solutions où {x=y}, qui sont considérées comme évidentes.

Euler 032

L’égalité {39\cdot186=7254} exprime {n=7254} en utilisant une fois et une seule tous les chiffres de {1} à {9}. Trouver la somme des entiers {n} qui ont cette propriété de {7254}, donc qui peuvent s’écrire {n=pq}, où la représentation décimale de {n,p,q} fait apparaître une fois et une seule chaque chiffre de {1} à {9}.

Euler 031

Soit {p} une liste {[p_{0},p_{1},\ldots,p_{n-1}]} de valeurs faciales de pièces, triée dans l’ordre croissant. De combien de façons peut-on payer une somme {s} avec des pièces de la valeur faciale indiquée dans la liste {p}? Indication: avec {s=200} et {p=[1,2,5,10,20,50,100,200]} le résultat est {73682}.

Euler 030

Donner la liste des entiers positifs qui sont égaux à la somme des puissances cinquièmes de leurs chiffres. Indication: on considère que 1 n’est pas solution, et la somme des solutions vaut alors 443839.

Euler 026

On dira que les répresentations décimales de {1/2=0.5} et {1/5=0.2} sont finies car elles aboutissent à une répétition de décimales nulles.
En revanche, celle de {1/7} est infinie: elle s’écrit s’écrit {1/7=0.\overline{142857}}, en notant {\overline{142857}} la répétition indéfinie des chifres {142857}: on exprimera cette situation en disant que le développement de {1/7} est ultimement périodique de période {6}.
Problème: on se donne un entier {N > 2}. Pour quelle valeur de {d}, avec {2\le d \lt N}, la période ultime de {1/d} est-elle la plus élevée?

Euler 025

La suite de Fibonacci est définie par {F_{0}=0}, {F_{1}=1} et{F_{n+2}=F_{n+1}+F_{n}} pour {n} de {\mathbb{N}}.
Quel est l’indice du plus petit {F_{n}} comportant {N\ge2} chiffres?

Euler 023

Un nombre abondant est un entier {n\ge1} dont la somme des diviseurs (y compris {n} lui-même) vérifie {\sigma(n) > 2n}. On peut montrer que tout entier plus grand que 28123 peut s’écrire comme somme de deux nombres abondants (non nécessairement distincts).
Calculer la somme de tous les entiers positifs qui ne peuvent pas s’écrire comme la somme de deux nombres abondants (non nécessairement distincts).

Euler 022

Using euler022.txt, a 46K text file containing over five-thousand first names, begin by sorting it into alphabetical order.
Then working out the alphabetical value for each name, multiply this value by its alphabetical position in the list to obtain a name score.
For example, when the list is sorted into alphabetical order, COLIN, which is worth 3 + 15 + 12 + 9 + 14 = 53, is the 938th name in the list.
So, COLIN would obtain a score of 938\times 53 = 49714.
What is the total of all the name scores in the file?

Euler 021

Soit {d(n)} la somme des diviseurs {k} de {n}, avec {1\le k \lt n}.
Deux entiers positifs {a} et {b} sont dits amiables si {d(a)=b}, {d(b)=a} et {a\ne b}.
Par exemple, les diviseurs stricts de {220} sont {1}, {2}, {4}, {5}, {10}, {11}, {20}, {22}, {44}, {55} et {110}, donc {d(220) = 284}. Les diviseurs stricts de {284} sont {1}, {2}, {4}, {71} et {142}, donc {d(284) = 220}: les deux entiers {220} et {284} sont donc amiables. Calculer la somme de toutes les paires de nombres amiables strictement inférieurs à {N}.