#/*********************************************************** # bifur.rb -- カオスとアトラクタ #***********************************************************/ require "window.rb" XMAX = 640 printf("kmin = "); kmin = gets.to_f printf("kmax = "); kmax = gets.to_f printf("pmin = "); pmin = gets.to_f printf("pmax = "); pmax = gets.to_f puts "please wait ..." gr_on(); gr_window(kmin, pmin, kmax, pmax, 0, 0) gr_plot_start dk = (kmax - kmin) / (XMAX - 1) k = kmin; while (k <= kmax) p = 0.3 for i in 1..50; p += k * p * (1 - p); end for i in 51..100 if (p >= pmin && p <= pmax) gr_wdot(k, p) end p += k * p * (1 - p) end k += dk end gr_plot_end gr_off exit 0