Ejercicio: 1Eva_IIIT2003_T3 Coordenadas enteras en un círculo
[ mientras repita] [ para/for ]
Considere el círculo centrado en el origen (0,0),
siendo su intervalo entre [-radio, radio].
Recorrer las coordenadas de números enteros en el recuadro limitado por
[-radio,radio] en cada lado, determinando la distancia del punto al origen.
radio = 10 x = [-10, -9, -8, -7, -6 ... 8, 9, 10]
dist = np.sqrt(x**2 + y**2)
Con la distancia revisar si el punto está dentro del círculo.
if dist<=radio:
encirculo = encirculo + 1
sumadist = sumadist + dist
[ mientras repita] [ para/for ]
..
Algoritmo en Python: bucle para/for
# 1Eva_IIIT2003_T3 Coordenadas enteras en un círculo import numpy as np # INGRESO radio = 10 # PROCEDIMIENTO a = - int(radio) b = int(radio) encirculo = 0 sumadist = 0 for y in range(a,b+1,1): for x in range(a,b+1,1): dist = np.sqrt(x**2 + y**2) if dist<=radio: encirculo = encirculo + 1 sumadist = sumadist + dist promdist = sumadist/encirculo # SALIDA print(' coordenadas enteras en círculo: ') print(encirculo) print('promedio distancias al centro: ') print(promdist)
resultado:
coordenadas enteras en círculo: 317 promedio distancias al centro: 6.698944789255016 >>>
[ mientras repita] [ para/for ]
..
Algoritmo en Python: mientras-repita
# 1Eva_IIIT2003_T3 Coordenadas enteras en un círculo import numpy as np # INGRESO radio = 10 # PROCEDIMIENTO a = - int(radio) b = int(radio) encirculo = 0 sumadist = 0 y = a while y<=b+1: x = a while x<=b+1: dist = np.sqrt(x**2 + y**2) if dist<=radio: encirculo = encirculo + 1 sumadist = sumadist + dist x = x + 1 y = y + 1 promdist = sumadist/encirculo # SALIDA print(' coordenadas enteras en círculo: ') print(encirculo) print('promedio distancias al centro: ') print(promdist)
[ mientras repita] [ para/for ]