加减法20以内,各50个

Run Settings
LanguageRuby
Language Version
Run Command
ADD_X_RANGE = (1..20) #第一个加数的范围 ADD_Y_RANGE = (1..20) #第二个加数的范围 ADD_RES_MAX = 20 #加法和最大值 ADD_RES_MIN = 10 #加法和最小值 ADD_FORMULA_CNTS = 50 #加法算式总的个数 DEC_X_RANGE = (10..20) #第一个减数的范围 DEC_Y_RANGE = (1..20) #第二个减数的范围 DEC_FORMULA_CNTS = 50 #减法算式总的个数 LINE_CNTS = 5 #每行算式个数 res = {} while res.size < ADD_FORMULA_CNTS do x = rand(ADD_X_RANGE) y = rand(ADD_Y_RANGE) if (x+y) <= ADD_RES_MAX && (x+y) > ADD_RES_MIN key = sprintf("%d+%d", x, y) str = sprintf("%-2d + %-2d = ", x, y) res[key] = str end end while res.size < (DEC_FORMULA_CNTS + ADD_FORMULA_CNTS) do x = rand(DEC_X_RANGE) y = rand(DEC_Y_RANGE) if (x-y) > 0 key = sprintf("%d-%d", x, y) str = sprintf("%-2d - %-2d = ", x, y) res[key] = str end end out_tab = res.to_a line = 0 out = {} out_size = 0 while out_size < 100 do i = rand(0..99) out[i] = i if out_size != out.size printf(out_tab[i][1]) line = line + 1 if line == LINE_CNTS puts "" puts "" line = 0 end out_size = out.size end end
Editor Settings
Theme
Key bindings
Full width
Lines