#!/usr/bin/env ruby include Enumerable, Math # составили список чисел от -PI до PI с шагом PI/12 a = (-12 .. 12).map {|i| i.to_s + "*PI/12"} # печать заголовка print "Угол\t Синус\t Косинус\t Тангенс\t Котангенс\n" for i in a.reverse # для печати в убывающем порядке x = eval i printf "%4s\t%9.4f\t%9.4f\t", eval(i + "*(15*12/PI)").round, # радианы -> градусы sin(x), cos(x) if cos(x).abs < 0.0001 then print " не сущ.\t" else printf "%9.4f\t", tan(x) end if sin(x).abs < 0.0001 then print " не сущ.\n" else printf "%9.4f\n", cos(x)/sin(x) end end