Ejercicio
Matriz 2D: Mostrar Círculo
Objectivo
Desarrolla un programa Python que cree una matriz bidimensional de 70x20 caracteres, "dibuje" un círculo con un radio de 8 dentro de él y lo muestre en la pantalla.
Pista: Los puntos en el círculo se pueden obtener usando:
x = xCenter + r * cos(angle)
y = yCenter + r * sin(angle)
"sin" y "cos" esperan que el ángulo se mida en radianes, en lugar de grados. Para convertir de una unidad a la otra, recuerda que 360 grados = 2π radianes (o 180 grados = π radianes): float radians = (angle * Math.PI / 180.0);
Puedes dibujar 72 puntos (como hay 360 grados en un círculo, estarían espaciados 5 grados entre sí).
Pista: En Python, el coseno es math.cos, el seno es math.sin y π es math.pi.
Ejemplo de ejercicio de Python
Mostrar código Python
import math
# Define the dimensions of the array
rows = 20
cols = 70
# Create a 70x20 two-dimensional array initialized with spaces
array = [[' ' for _ in range(cols)] for _ in range(rows)]
# Circle parameters
radius = 8
x_center = 35 # Horizontal center of the circle
y_center = 10 # Vertical center of the circle
# Draw the circle by calculating points
for angle in range(0, 360): # We use steps of 1 degree for more precision
radians = math.radians(angle) # Convert angle to radians
x = int(x_center + radius * math.cos(radians)) # Calculate x position
y = int(y_center + radius * math.sin(radians)) # Calculate y position
# Make sure the point is within the bounds of the array
if 0 <= x < cols and 0 <= y < rows:
array[y][x] = 'O' # Mark the point with 'O'
# Display the array (circle)
for row in array:
print(''.join(row))
Output
OOOOOOOOOOOOOOOOOOOOOOOO
O O
O O
O O
O O
O O
O O
O O
O O
O O
O O
O O
O O
O O
OOOOOOOOOOOOOOOOOOOOOOOO
Código de ejemplo copiado
Comparte este ejercicio de Python