Вернуться   Форум сети Сonvex > Электронное бремя > Web-разработка и програмирование > Языки программирования (C++, Java, Delphi и т.д.)

Ответ
 
Опции темы Опции просмотра
Старый 04.12.2011, 17:48   #1
Новичок
Регистрация: 15.02.2009
Сообщений: 35
Репутация: 10 [+/-]
По умолчанию python help

Помогите написать программу расчета формулы по двум "х"...
нужная формул на левой картинкесправа просто пример откуда то взятый(не верный...)...
прикрепил фотку начало верное до "def ff" не понимаю алгоритм ...
Заранее благодарен.
Изображения
Тип файла: jpg IMG_0135.jpg (70.8 Кб, 97 просмотров)


[FreeDom]~Boo~ вне форума   Ответить с цитированием
Старый 04.12.2011, 23:54   #2
Новичок
Регистрация: 15.02.2009
Сообщений: 35
Репутация: 10 [+/-]
По умолчанию

блин не знает чтоли никто ? ((((((
[FreeDom]~Boo~ вне форума   Ответить с цитированием
Старый 05.12.2011, 02:35   #3
Прохожий
Регистрация: 05.12.2011
Сообщений: 8
Репутация: 10 [+/-]
По умолчанию

можешь получше обьянсть что данно и что нужно сделать def я так понял объявление переменных ты написал до деф там правильно у тебя ты где взял переменные ?
to4ka- вне форума   Ответить с цитированием
Старый 05.12.2011, 11:53   #4
Новичок
Регистрация: 15.02.2009
Сообщений: 35
Репутация: 10 [+/-]
По умолчанию

Цитата:
Сообщение от to4ka- Посмотреть сообщение
можешь получше обьянсть что данно и что нужно сделать def я так понял объявление переменных ты написал до деф там правильно у тебя ты где взял переменные ?
до def ff данные препод дал.
а нужно найти вроде 4 точки.(справа пример) должно что то типа такого получится (только он не прально составлен там ошибка)...
[FreeDom]~Boo~ вне форума   Ответить с цитированием
Старый 05.12.2011, 14:04   #5
Постоялец
Регистрация: 21.12.2007
Сообщений: 1,324
Репутация: 10 [+/-]
По умолчанию

сформулируй нормально задание.
__________________
smartich (22:20:33 1/09/2008)
мы мощные а диксон самый мощный))))
dIXONN. вне форума   Ответить с цитированием
Старый 05.12.2011, 14:17   #6
Новичок
Регистрация: 15.02.2009
Сообщений: 35
Репутация: 10 [+/-]
По умолчанию

Цитата:
Сообщение от dIXONN. Посмотреть сообщение
сформулируй нормально задание.
блин если бы нам препод из этого упи нормально объяснил задание - я вы вам тоже его написал.
а он просто дал формулу. сказал ещё что надо решить её,вроде "методом покоординатного спуска"

[FreeDom]~Boo~ добавил 05.12.2011 в 19:26
спс всем кто пытался помочь...
вот что надо было сделать )
Код:
# -*- coding: utf-8 -*-
## Метод покоординатного спуска
from Tkinter import *
from math import*

def f(x): 
    return 100.0-((x[0]-5.0)**2+(x[1]-3.0)**2) 
 
L1=[ 0.0, 0.0, 0.0]
L2=[10.0,10.0,10.0]
Lx,Ln=L1[:],L1[:]
ll=len(L1)

def ff(j,L1,L2,Lx):
    n,e=1000.0,0.000000001
    x1,x2=L1[j],L2[j]
    while 1:
        lx,ly,x,dx=[],[],x1,(x2-x1)/n
        while x<=x2:
            Lx[j]=x
            lx+=[x]
            ly+=[f(Lx)]
            x+=dx
        ymax=max(ly)
        i=ly.index(ymax)
        xmax=lx[i]
        Lx[j]=xmax
        if dx<=e: break
        if   i==0:         x1,x2=xmax,xmax+dx
        elif i==len(ly)+1: x1,x2=xmax-dx,xmax
        else:              x1,x2=xmax-dx,xmax+dx
    return Lx

while 1:
    for j in xrange(ll): Lx=ff(j,L1,L2,Lx)
    v=0.0
    for j in xrange(ll): v+=(Lx[j]-Ln[j])**2
    v=pow(v,0.5)
    print 'x1=%11.8f  x2=%11.8f  x3=%11.8f  v=%11.8f' % (Lx[0],Lx[1],Lx[2],v)
    if v<e: break
    Ln=Lx[:]
   
print '________'*8
print 'x1=%11.8f  x2=%11.8f  x3=%11.8f  v=%11.8f' % (Lx[0],Lx[1],Lx[2],v)
[FreeDom]~Boo~ добавил 05.12.2011 в 19:29
а возможно ли изменить эту прогу(для построики графиков),чтобы графики были построены в изометрии ? сдесь построено 5 графиков, но они лежат на плоскости...нужно построить их в изометрии и чтобы каждый график был отодвинуть на опр угол.
Код:
# -*- coding: utf-8 -*-
## Метод покоординатного спуска
from Tkinter import *
from math import*
from bsc_grafik import *

def f(x): 
    return 100-((x[0]-5.0)**2+(x[1]-3.0)**2)
 
L1=[ 0.0, 0.0]
L2=[10.0,10.0]
L=[]
x=L1[:]
while x[1]<=L2[1]:
    x[0]=L1[0]
    lx,ly=[],[]
    while x[0]<=L2[0]:
        y=f(x)
        x[0]+=0.1
        lx+=[x[0]]
        ly+=[y]
    L+=[[lx,ly]]
    x[1]+=2.5
##print L
##==================================================================  Tkinter
A,B = 930,620
tk = Tk()
tk.title("проекция")
f = Frame(tk)
f.pack()
c = Canvas(f, bg="white", width=A, height=B)
c.pack(expand=1, fill=BOTH)
bg,clr='White',['red','blue',"black",'green','red','blue',"black",'green','red','blue',"black",'green','maroon',"#0DF","#C06","#A64","#684","#AC3"]
ww=[4,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1]
##==================================================================  Output
clrd=zip(clr,ww)
desine_d(10,5,900,600,bg,clrd,L,50,50,c,4,1)
##sfr,tt,sfr1="%s %16.8f %16.8f %s\n",'Загрузка\n\n','%s %11.8f\n'
##tt+=sfr % ('x =',min(bd.L['x']),max(bd.L['x']),' ')
##tt+=sfr % ('y =',min(bd.L['y']),max(bd.L['y']),' ')
##tt+=sfr % ('p =',min(bd.L['p']),max(bd.L['p']),' ')
##tt+=sfr % ('x =',x,y,' ')
##tt+='x1=%10.6f,  x2=%10.6f,  x=%10.6f,  y=%10.6f' % (x1,x2,x,y)
##Lbd =[Bd(320,530,tt,'black',bg)]
##for ibd in Lbd: ibd.show(c)
tk.mainloop(1)

Последний раз редактировалось [FreeDom]~Boo~; 05.12.2011 в 20:29. Причина: Добавлено сообщение
[FreeDom]~Boo~ вне форума   Ответить с цитированием
Старый 11.12.2011, 18:40   #7
Новичок
Регистрация: 15.02.2009
Сообщений: 35
Репутация: 10 [+/-]
По умолчанию

ну никтор не знает чтоль)
[FreeDom]~Boo~ вне форума   Ответить с цитированием
Ответ

Закладки

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +5, время: 08:14.



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot