Прикреплённый файл «grap_1-1.py»

Загрузка

   1 #!/usr/bin/env python
   2 # -*- coding: UTF-8 -*-
   3 '''
   4 Проект "Построение графика", версия 1.1
   5 Построение (неправильное) графика произвольной функции
   6 в произвольно диапазоне на текстовом экране произвольных размеров
   7 '''
   8 #  name: scale
   9 #  @param x, X0, X1, Z0, Z1
  10 #  @return z
  11 def scale(x, X0, X1, Z0, Z1):
  12   'Преобразует координату x (в диапазоне [X0, X1]) в координату z в диапазоне [Z0, Z1]'
  13   return Z0+(Z1-Z0)*(x-X0)/float(X1-X0)
  14 
  15 #  name: round
  16 #  @param x
  17 #  @return x, округлённое до ближайшего целого
  18 def round(x):
  19   return int(floor(x+0.5))
  20 
  21 #  name: fun
  22 #  @param x -- параметр, eq -- строковая формула
  23 #  @return вычисленная формула от x
  24 def fun(x, eq):
  25   return eval(eq)
  26 
  27 from math import *
  28 fml=raw_input("Введите функцию в виде формулы от x (например, sin(x)*x ): ")
  29 X0, X1, W, H = input("Введите начало диапазона, конец диапазона, ширину и высоту экрана: ")
  30 X0, X1 = float(X0), float(X1)
  31 Y0, Y1 = -1., 1.    # Это ошибочное предположение:
  32 for ix in range(H):
  33   x=scale(ix, 0, H, X0, X1)
  34   y=fun(x, fml)
  35   iy=round(scale(y, Y0, Y1, 0, W-2))
  36   print " "*iy+"*"

Прикреплённые файлы

Для ссылки на прикреплённый файл в тексте страницы напишите attachment:имяфайла, как показано ниже в списке файлов. Не используйте URL из ссылки «[получить]», так как он чисто внутренний и может измениться.

Вам нельзя прикреплять файлы к этой странице.