ComPhy
      # julia
      using Plots

      ## задаємо робочу зону
      width, height = π, 1
      f(x) = sin(x)
      S = width*height

      ## замість ітерацій згенеруємо одразу N точок і просто порахуємо кількість F
      N = 200000
      points = [width*rand(N), height*rand(N)]
      F = sum(points[2] .< f.(points[1]))
      S_f = F/N*S

      ## намалювати середовище
      table = scatter(points..., label="точки")
      xs = 0:0.1:width
      plot!(table, xs, f.(xs), legend=true, lw=3, color="black", label="f(x)")