[PYTHON] Collecte des problèmes de programmation (Q11 à Q15)

Question 11: Méthode de production par division (approximation rectangulaire)

Il existe une approximation rectangulaire, une loi trapézoïdale, la loi de Simpson, etc. comme méthode de production divisionnaire pour obtenir numériquement l'intégration. Parmi eux, dans l'approximation rectangulaire, la somme du rectangle obtenue en multipliant la valeur $ f (x_i) $ en un certain point $ x_i $ par la largeur $ h $ est approximée comme la valeur intégrée.

定積分

Résolvez l'équation ci-dessus numériquement en utilisant une approximation rectangulaire.

Exemple de réponse

Question 12: Méthode de production divisionnaire (règle trapézoïdale)

Il existe une approximation rectangulaire, une loi trapézoïdale, la loi de Simpson, etc. comme méthode de production divisionnaire pour obtenir numériquement l'intégration. Selon la règle trapézoïdale, la largeur $ par $ f (x_i) $ et $ f (x_ {i-1}) $ à un certain point $ x_i $ et le point avant $ x_ {i-1} $ </ sub> La somme des trapèzes de h $ est approximée comme la valeur intégrée.

定積分

Résolvez l'équation ci-dessus numériquement en utilisant la loi trapézoïdale.

Exemple de réponse

Question 13: Méthode de production divisionnaire (loi de Simpson)

Il existe une approximation rectangulaire, une loi trapézoïdale, la loi de Simpson, etc. comme méthode de production divisionnaire pour obtenir numériquement l'intégration. Selon la loi de Simpson, une fonction quadratique qui passe par un certain point $ x_i $, un point avant $ x_ {i-1} $, et un point après $ x_ {i + 1} $ est dérivée, et son $ f (x_ { i-1}) Valeur intégrée de $ à $ f (x_ {i + 1}) $ $ h (f (x_ {i + 1}) + 4f (x_i) + f (x_ {i-1})) La somme approximative de / 3 $ comme valeur intégrée.

定積分

Résolvez l'équation ci-dessus numériquement en utilisant la loi de Simpson.

Exemple de réponse

Question 14: Tamis Eratostenes

Créez une fonction qui renvoie le nombre de nombres premiers inférieur ou égal à $ n $ lorsque vous entrez l'entier $ n $. Expliquez également l'algorithme.

cependant,

Et.

Exemple 14-1

n = 10
4

Exemple 14-2

n = 100
25

Exemple 14-3

n = 1000
168

Exemple 14-4

n = 10000
1229

Exemple 14-5

n = 100000
9592

Exemple de réponse

Question 15: Nombre de points de réseau

Il y a deux points de grille $ P = (x_1, y_1) $, $ Q = (x_2, y_2) $ sur le plan euclidien. Créez une fonction sur le segment de ligne $ PQ $ pour calculer combien de points de grille existent en plus de $ P $ et $ Q $. Expliquez également l'algorithme.

cependant,

Et.

[Hint] Vous pouvez réduire le problème de trouver l'engagement maximum. Il peut être résolu efficacement par la "méthode euclidienne de division mutuelle". </ font>

Exemple 15-1

x1 =  -2
y1 =  -9
x2 =  6
y2 =  7
7
#Illustré et confirmé
%matplotlib inline
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot([x1, x2], [y1, y2])
ax.set_xticks(range(x1, x2 + 1, 1))
ax.set_yticks(range(y1, y2 + 1, 1))
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.grid()

9-1.png

Exemple 15-2

x1 =  -42
y1 =  -65
x2 =  62
y2 =  -91
25

Exemple 15-3

x1 =  908
y1 =  -307
x2 =  -86
y2 =  -679
0

Exemple 15-4

x1 =  -6326
y1 =  3211
x2 =  7048
y2 =  5822
0

Exemple 15-5

x1 =  -9675
y1 =  -2803
x2 =  3828
y2 =  -6349
2

Référence: Comment faire un exemple

import random
x1 = random.randint(-1000000, 1000000)
y1 = random.randint(-1000000, 1000000)
x2 = random.randint(-1000000, 1000000)
y2 = random.randint(-1000000, 1000000)

print("x1 = ", x1)
print("y1 = ", y1)
print("x2 = ", x2)
print("y2 = ", y2)

Exemple de réponse

  • https://qiita.com/maskot1977/private/10bac9b3829fefcd286f

Recommended Posts

Collecte des problèmes de programmation (Q16 à Q20)
Collecte des problèmes de programmation (Q11 à Q15)
Collecte des problèmes de programmation (Q31-Q35)
Problème de programmation "4 Queen Square"
AOJ Introduction à la programmation Sujet 1, Sujet 2, Sujet 3, Sujet 4
AOJ Introduction à la programmation Sujet n ° 7, Sujet n ° 8
AOJ Introduction à la programmation Sujet n ° 5, Sujet n ° 6
Une introduction à la programmation Python
Programmation pour combattre dans le monde ~ 5-1
Programmation pour combattre dans le monde ~ 5-5,5-6
Programmer pour combattre dans le monde 5-3
[Introduction à Python3 Jour 1] Programmation et Python
Programmation tirée des livres le 10 mai
Programmation pour combattre dans le monde - Chapitre 4
Sites Web pour vous aider à apprendre la programmation
Programmation tirée des livres le 7 mai
Programmation pour combattre dans le monde ~ 5-2