Iată o postare în onoarea Zilei Nebunilor din April Fools, care, spre deosebire de 14 martie, este sărbătorită de țările care folosesc fie formatul lunii, fie formatul de-a lungul lunii.
Nu toată lumea este o persoană de matematică, dar aproape toată lumea își amintește de teorema pitagoreană.
Ei bine, nu toată lumea. Scurgerea a greșit în filmul din 1939, „Vrăjitorul din Oz”. Este discutabil dacă scriitorii au greșit din greșeală sau în mod deliberat, sau dacă actorul Ray Bolger a aruncat linia. (A se vedea, de asemenea, Singh, „The Simpsons and lor Secretele lor matematice”, pp. 119-121.)
Iată, așadar, o mică problemă de teoremă pitagoreană. În următorul triunghi drept, calculați C. a2 + B2 = C2apoi luați rădăcina pătrată a lui C. cât de greu poate fi?

Desigur, trebuie să știți dacă a = (√-1), atunci a2 = (√-1)2 = -1, dar asta pare rezonabil.
Dar ceva pare greșit cu valoarea rezultată a lui C?
Am trasat triunghiul într -un plan de număr complex, nu un avion cu număr real. (√-1) nu este un număr „real” și poate ar trebui să fie gândit ca un număr non-real. (Evit în mod intenționat temutul cuvânt „I”.) Poate că ceea ce se întâmplă este că, în planul complex, hipotenuza C este într -adevăr un segment de linie de magnitudine zero și, prin urmare, un punct? Nu, nu „într -adevăr”.

Deci aprilie prost. Ați calculat o hipotenuză a unui triunghi drept și ați concluzionat că are lungimea zero.
Un răspuns mai bun este că un punct (x, y) în planul complex este reprezentat ca x + yi, iar distanța euclidiană între două puncte complexe (x, y) și (u, v) este egală cu √ (u – x)2 + (v – y)2 ) care aici este așteptatul √2.
Iată codul R pentru complot, urmat de codul Python pentru complot. Rețineți că în R, umbrirea se face cu geom_polygon, în timp ce în piton se face cu plt.fill_between:
library(ggplot2)
# Define the vertices of the triangle
triangle_data <- data.frame(
x = c(0, 0, 1), # x-coordinates of vertices
y = c(0, 1, 0) # y-coordinates of vertices
)
ggplot(data = NULL) +
geom_polygon(data = triangle_data, aes(x = x, y = y), fill = "#9B111E", color = "black") +
geom_segment(aes(x = 0, y = 0, xend = 1, yend = 0), color = "black", size = 2) +
geom_segment(aes(x = 0, y = 0, xend = 0, yend = 1), color = "black", size = 2) +
geom_segment(aes(x = 0, y = 1, xend = 1, yend = 0), color = "black", size = 2) +
ggtitle("Use the Pythagorean Theorem to calculate C") +
xlab(expression(bold(A == sqrt(-1)))) + # Square root symbol for x-axis label
ylab("B = 1") + # Label for y-axis
geom_text(aes(x = 0.55, y = 0.55, label = "C = ?"), fontface = "bold", size = 6) +
theme_classic() +
theme(
legend.position = "none",
axis.line = element_blank(),
axis.text = element_blank(),
axis.ticks = element_blank(),
axis.title.x = element_text(size = 20, face = "bold"),
axis.title.y = element_text(size = 20, face = "bold"),
plot.title = element_text(size = 20, face = "bold")
)
import numpy as np
import matplotlib.pyplot as plt
# Create figure and axes
fig, ax = plt.subplots()
ax.set_title('Use the Pythagorean Theorem to calculate C', fontsize=15, fontweight="bold")
# Define the points for the line
x = (0, 1)
y = (1, 0)
# Plot the horizontal and vertical lines
ax.axhline(y=0, color="black") # x-axis
ax.axvline(x=0, color="black") # y-axis
# Plot the diagonal line
ax.plot(x, y, color="black", linewidth=1.5)
# Fill the region enclosed by the axes and the line
plt.fill_between(x, y, 0, color="#9B111E", alpha=0.5)
# Add axis labels with bold and enlarged fonts
ax.text(0.5, -0.05, r"$mathbf{A = sqrt{-1}}$", ha="center", va="center", fontsize=14, transform=ax.transAxes)
ax.text(-0.05, 0.5, r"$mathbf{B = 1}$", ha="center", va="center", fontsize=14, rotation=90, transform=ax.transAxes)
# Add diagonal line label with bold text, enlarged font, and moved farther off the line
ax.text(.6, .5, r"$mathbf{C}$", ha="center", va="center", fontsize=14, color="black")
# Turn off the axes' tick marks and spines
ax.spines('top').set_color('none')
ax.spines('right').set_color('none')
ax.spines('bottom').set_color('none')
ax.spines('left').set_color('none')
ax.tick_params(left=False, bottom=False, labelleft=False, labelbottom=False)
# Display the plot
plt.show()
# Sfârşit
