Загрузка данных


import random

import math

def f(x, y):

    return math.sqrt(x**2 - y**2)

n = 100000

sum_f = 0

count = 0

for _ in range(n):

    x = random.random()   # [0,1]

    y = random.random()   # [0,1]

    # проверка попадания в треугольник y <= x

    if y <= x:

        sum_f += f(x, y)

        count += 1

# площадь квадрата = 1

S = 1

# оценка интеграла

I = S * (sum_f / n)

print(I)