Iterative рдЦреЛрдЬ рдХрд╛рд░реНрдпрдХреНрд░рдо

рдкрд░рд┐рдЪрдп



рдХрд┐рд╕реА рддрд░рд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд▓реНрджреА рд╕реЗ рдмрд╣рд╛рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдИред рдпрд╛рдиреА рдореЗрд░реЗ рдкрд╛рд╕ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдФрд░ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдерд╛ред рдореИрдВ рдЬрд▓реНрджреА рд╕реЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдвреВрдВрдврдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рднреА рдЙрддреНрддрд░ рдкреНрд░рд╛рдкреНрдд рд╣реБрдП рдереЗред рдореИрдВрдиреЗ рдПрдХ рд╕рдВрдХреЗрдд рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред

рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

рдореИрдВрдиреЗ рдЫреЛрдЯреА рд╢реБрд░реБрдЖрдд рдХреА - рдореИрдВрдиреЗ python 2.7 рдкрд░ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдпрд╛ рдЬреЛ рджрд┐рдП рдЧрдП рд▓рд╛рднрд╛рдВрд╢ рдФрд░ рднрд╛рдЬрдХ рдХреЛ рдвреВрдВрдврддрд╛ рд╣реИред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╣рд▓рдЪрд▓ред рдлрд┐рд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЧреБрдгрд╛, рдШрдЯрд╛рд╡ рдФрд░ рд╡рд┐рднрд╛рдЬрди рдХреЛ рдЬреЛрдбрд╝рд╛, рдЬреЛ рдмрд╛рдж рдХреЗ рдЪрд░рдгреЛрдВ рдореЗрдВ рдХрд╛рдо рдЖрдпрд╛ред рдЗрд╕ рд╕реНрддрд░ рдкрд░, рдХрд╛рд░реНрдпрдХреНрд░рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ рдХрд┐ рд╕рдВрдЦреНрдпрд╛ 0.428571428571 3/7 рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рдХреА рдЧрдИ рдереАред
рдЬреЛрдбрд╝реЗ рдЧрдП (рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛) рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рджреЛрдиреЛрдВ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред
рдмрд╛рдж рдореЗрдВ рдЙрдиреНрд╣реЛрдВрдиреЗ рдорд╛рдирдХ рддрд░реНрдХрд╣реАрдирддрд╛ рдХреЛ рдЬреЛрдбрд╝рд╛ред рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдХрд┐ 0.785398163397 рдкрд╛рдИ / 4 рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдпрд╣рд╛рдБ рд╕рдВрд╕реНрдХрд░рдг 4.6 рд╣реИ:
 # -*- coding: cp1251 -*- #Concatenate 3.2.py+2.3.py #========================== #       #      #   . # # : #'sqrt(y)','exp(y)','log(y)','log10(y)','y**(1/3)','y**2','y**3','2**y','log2(y)' from math import * print ('For example: c=? (0.3752*sqrt(3.0)+exp(2.0))/cos(pi/4.0)-2.0**(-2.0)') #print ('Use 0<c<9802' for 'a=range(1,101)') c = float(input ('c=? ')) print 'c =',c # : c1=0 if c<0: #    .    . c=-c c1=-1 #========================== z=0 # integer=[float(i) for i in range(1,101)] i=0 while i<len(integer): if c==integer[i]: z=1 # print 'integer' i+=1 #========================== #Add 2.3.py """ ##all variables: ##a, b, c, d, e, j, i, f, g, h, k, l, m, n, e1, l1 ##aa, bb, cc, dd, ee, jj, ii, ff, gg, hh, kk, ll, mm, nn, ee1, ll1 ##p,q, ##r """ #import math #from math import * # #Division #used variables: a, b, c, d, e, j, i, e1. (7 items) (j and i are iteration's variables) #c = float(raw_input('c=? ')) #print ('For example: c=? (0.3752*sqrt(3)+exp(2))/cos(pi/4)-2**(-2)') #print ('Use 0<c<9802' for 'a=range(1,100)') #c = input ('c=? ') a=range(1,101) #1.you may change here. 'a=change(1,l1)' or 'a=change(1,1001)' b=a = [float(i) for i in a] i=0 d=1.1 e=[] while i<len(a): j=0 while j<len(b): if abs(a[i]/b[j]-c)< d: d=abs(a[i]/b[j]-c) e.append([a[i],'/',b[j],'=',a[i]/b[j],'Error =',d]) e1=a[i]/b[j] j+= 1 i+=1 "print e[-1]" #==================== #Complication #used variables: f, g, h, k, l, m, n, l1 (7 items) "h = float(raw_input('h=? '))" h=c f=a #f=range(0,101) #you may stay 'f=range(1,11)' or 'f=range(1,1001)' g=f = [float(n) for n in f] n=0 k=1.1 l=[] while n<len(f): m=0 while m<len(g): if abs(f[n]*g[m]-h)< k: k=abs(f[n]*g[m]-h) l.append([f[n],'*',g[m],'=',f[n]*g[m],'Error =',k]) l1=f[n]*g[m] m+= 1 n+=1 "print l[-1]" #================= #Addittion #added variables: aa, bb, cc, dd, ee, jj, ii, ee1 (7 items) "cc = float(raw_input('cc=? '))" cc=c aa=a #aa=range(0,101) #you may stay 'aa=range(1,11)' or 'aa=range(1,1001)' bb=aa = [float(ii) for ii in aa] ii=0 dd=1.1 ee=[] while ii<len(aa): jj=0 while jj<len(bb): if abs(aa[ii]+bb[jj]-cc)< dd: dd=abs(aa[ii]+bb[jj]-cc) ee.append([aa[ii],'+',bb[jj],'=',aa[ii]+bb[jj],'Error =',dd]) ee1=aa[ii]+bb[jj] jj+= 1 ii+=1 "print ee[-1]" #================= #subtraction #used variables: ff, gg, hh, kk, ll, mm, nn, ll1 (7 items) "hh = float(raw_input('hh=? '))" hh=c ff=a #ff=range(0,101) #you may stay 'ff=range(1,11)' or 'ff=range(1,1001)' gg=ff = [float(nn) for nn in ff] nn=0 kk=1.1 ll=[] while nn<len(ff): mm=0 while mm<len(gg): if abs(ff[nn]-gg[mm]-hh)< kk: kk=abs(ff[nn]-gg[mm]-hh) ll.append([ff[nn],'-',gg[mm],'=',ff[nn]-gg[mm],'Error =',kk]) ll1=ff[nn]-gg[mm] mm+= 1 nn+=1 "print ll[-1]" #================= #comparision. #used variables: p,q #print 'c =',c p=min(d,k,dd,kk) if p==d: q=e[-1] #print q if p==k: q=l[-1] #print q if p==dd: q=ee[-1] #print q if p==kk: q=ll[-1] #print q #print q #for 4.0: pp=p qq=q if c1==-1: qq=['-']+qq #================================================================================= #================================================================================= #Add 3.2.py i=0 a = [float(i) for i in range(1,11)] f=[sqrt(i) for i in a] g=[exp(i) for i in a] if c==-1: m=[1.0/log[i] for i in a] else: m=[log(i) for i in a] if c==-1: n=[1.0/log10(i) for i in a] else: n=[log10(i) for i in a] p=[i**(1/3.0) for i in a] q=[i**2.0 for i in a] s=[i**3.0 for i in a] t=[2.0**i for i in a] if c==-1: u=[1.0/log(i,2) for i in a] else: u=[log(i,2) for i in a] v=[(sqrt(5.0)+1.0)/2.0,pi/6.0,pi/4.0,pi/3.0,pi/2.0,pi,pi*3/2.0,pi*2.0,1/3.0,1/2.0] #v=[pi*i for i in vpi] h=a+f+g+m+n+p+q+s+t+u+v i=0 r=10.1 while i <len(h): if c>0: if abs(ch[i])<r: k=h[i] b=i r=abs(ch[i]) i+=1 #======================================================= if z==0: if abs(h[b]-c)<=pp: if 0<=b<=9: pass #print 'Integer' elif 10<=b<=19: print 'sqrt(y)' elif 20<=b<=29: print 'exp(y)' elif 30<=b<=39: print 'log(y)' elif 40<=b<=49: print 'log10(y)' elif 50<=b<=59: print 'y**(1/3)' elif 60<=b<=69: print 'y**2' elif 70<=b<=79: print 'y**3' elif 80<=b<=89: print '2**y' elif 90<=b<=99: print 'log2(y)' elif b==100: print 'fi=(sqrt(5)+1)/2' elif b==101: print 'pi/6' elif b==102: print 'pi/4' elif b==103: print 'pi/3' elif b==104: print 'pi/2' elif b==105: print 'pi' elif b==106: print '3*pi/2' elif b==107: print '2*pi' elif b==108: print '1/3' elif b==109: print '1/2' if 0<=b<=9: bb=b elif 10<=b<=99: bb=b%10 elif 100<=b<=1000: bb=b%100 if not 100<=b<=109: print 'y =',bb+1 if c1==-1: print '-f(y)=','-',h[b] else: print 'f(y)=',h[b] print 'Error=',abs(h[b]-c) else: print qq 


рдЕрдЧрд▓реЗ рдЪрд░рдг рдореЗрдВ рдПрдХ рджреВрд╕рд░рд╛ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ - рдкрд╣рд▓реЗ рдЪрд░рдг рдореЗрдВ рдкрд░рд┐рдгрд╛рдореА рдбреЗрдЯрд╛ рд╕рд░рдгреА рдХреЛ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдпрд╛ рдЧрдпрд╛ред
рдХрд╛рд░реНрдпрдХреНрд░рдо рдкрд╛рдпрд╛, 3.69314718056 рджрд┐рдпрд╛, рдЖрд╡рд╢реНрдпрдХ 3 + рд▓реЙрдЧ (2)
рд╕рдВрд╕реНрдХрд░рдг 5.1:
 # -*- coding: cp1251 -*- #iteration 2 step from math import * #-------------- #This version have MemoryError #0 iteration c = float(input ('c=? ')) #c=1/sqrt(2) print 'c =',c c1=1 #    . if c<0: c=-c c1=-1 #  -   . k=10 #-1 iteration z1=range(1,11) z2=[] z2=[pi,exp(1)] z3=[] z3=[sqrt(2),sqrt(3)] z4=[] z4=[sqrt(2)/2.0, sqrt(3)/2.0] z5=[2**(1/3.0),3**(1/3.0)] if c>=1: z6=[log(2),log10(2)] else: z6=[-log(1/2.0),-log10(1/2.0)] z=z1 z234=z2+z3+z4+z5+z6 if c1>=1: z2345=['pi','exp(1)','sqrt(2)','sqrt(3)','sqrt(2)/2.0', 'sqrt(3)/2.0', '2**(1/3.0)','3**(1/3.0)','log(2)','log10(2)'] else: z2345=['pi','exp(1)','sqrt(2)','sqrt(3)','sqrt(2)/2.0', 'sqrt(3)/2.0', '2**(1/3.0)','3**(1/3.0)','-log(1/2.0)','-log10(1/2.0)'] #z=z1+z234 a=z #print len(a) #0 iteration b=a = [float(i) for i in a] i=0 adivb=[] while i<len(a): j=0 while j<len(b): ab=a[i]/b[j] adivb.append(ab) j+= 1 i+=1 #sqrt1=[sqrt(i) for i in a] #exp1=[sqrt(i) for i in a] #print len(adivb) #------------- #1 iteration i=0 adivb1=[] acomplb1=[] asumb1=[] asubb1=[] a1=adivb b1=z234 while i<len(a1): j=0 while j<len(b1): ab1=a1[i]/b1[j] #div #adivb1.append(ab1) if abs(ab1-c)<k: k=abs(ab1-c) q='/' p=j r=i g=[a1[i],'/',z2345[j]] # g=[a1[i],'/',b1[j]] ax1=a1[i]*b1[j] #compl #acomplb1.append(ax1) if abs(ax1-c)<k: k=abs(ax1-c) q='*' p=j r=i g=[a1[i],'*',z2345[j]] # g=[a1[i],'*',b1[j]] ay1=a1[i]+b1[j] #sum #asumb1.append(ay1) if abs(ay1-c)<k: k=abs(ay1-c) q='+' p=j r=i g=[a1[i],'+',z2345[j]] # g=[a1[i],'+',b1[j]] az1=a1[i]-b1[j] #subtraction #asubb1.append(az1) if abs(az1-c)<k: k=abs(az1-c) q='-' p=j r=i g=[a1[i],'-',z2345[j]] # g=[a1[i],'-',b1[j]] j+= 1 i+=1 #print r,k,p,z234[p] print g #----------------------- #aabb=adivb1+acomplb1+asumb1+asubb1 #print len(aabb) #------------------------- #print "----------------------------" """ i=0 k=10 while i<len(aabb): if abs(aabb[i]-c)<k: k=abs(aabb[i]-c) kk=i i+=1 #print 'c = ',c #print 'index =',kk #print '  =',aabb[kk] #print 'k =',k #error if kk>9: bb=(kk)%10 if 0<=kk<=9: print '1','/',kk+1 elif 10<=kk<=19: print '2','/',bb+1 elif 20<=kk<=29: print '3','/',bb+1 elif 30<=kk<=39: print '4','/',bb+1 elif 40<=kk<=49: print '5','/',bb+1 elif 50<=kk<=59: print '6','/',bb+1 elif 60<=kk<=69: print '7','/',bb+1 elif 70<=kk<=79: print '8','/',bb+1 elif 80<=kk<=89: print '9','/',bb+1 elif 90<=kk<=99: print '10','/',bb+1 """ #------- #if c1>=1: # z234=[pi,exp(1),sqrt(2),sqrt(3),sqrt(2)/2.0, sqrt(3)/2.0, 2**(1/3.0),3**(1/3.0),log(2),log10(2)] #else: # z234=[pi,exp(1),sqrt(2),sqrt(3),sqrt(2)/2.0, sqrt(3)/2.0, 2**(1/3.0),3**(1/3.0),-log(1/2.0),-log10(1/2.0)] """ #1 iteration if kk>99: bb=(kk)%100 if 0<=kk<=99: pass elif 100<=kk<=199: print '1','/','(','1','/',kk+1,')' elif 200<=kk<=299: print '1','/','(','2','/',bb+1,')' elif 300<=kk<=399: print '1','/','(','3','/',bb+1,')' elif 400<=kk<=499: print '1','/','(','4','/',bb+1,')' elif 500<=kk<=599: print '1','/','(','5','/',bb+1,')' elif 600<=kk<=690: print '1','/','(','6','/',bb+1,')' elif 700<=kk<=799: print '1','/','(','7','/',bb+1,')' elif 800<=kk<=899: print '1','/','(','8','/',bb+1,')' elif 900<=kk<=999: print '1','/','(','9','/',bb+1,')' elif 1000<=kk<=1099: print '1','/','(','9','/',bb+1,')' """ 


рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рддреАрд╕рд░реЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЗ рд▓рд┐рдП, рдЕрдЬрдЧрд░ рдХреА рд╕реНрдореГрддрд┐ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рдереАред рдЗрд╕рд▓рд┐рдП, рд╡рд╛рдВрдЫрд┐рдд 3 + sqrt (2) * 5 рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рдП рдЧрдП 10.007106781 рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдХреЛрдИ рдЪрдорддреНрдХрд╛рд░ рдирд╣реАрдВ рд╣реИрдВред

рдЬреЛ рдореИрдВ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛

1. рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд╕реЗрд╡рд╛ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИред
2. рдореИрдВ рдЕрднреА рднреА 2 рдХрд╛рд░реНрдпреЛрдВ рдХреА рдореЗрдореЛрд░реА рд╕реАрдорд╛ рдХреЛ рдкрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред
3. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реНрд╡рдпрдВ рдЦреЛрдЬ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рджреЗрдВ - рдЕрд░реНрдерд╛рдд рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдкрд░реАрдХреНрд╖рдг рд╕рдорд╕реНрдпрд╛ рдореЗрдВ 6 рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрдЦреНрдпрд╛рдПрдБ рджреА рдЧрдИ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕рднреА рдкреНрд░рд╛рдХреГрддрд┐рдХ рдФрд░ рдЕрдкрд░рд┐рдореЗрдп рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЗрд╡рд▓ рдЗрди рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
(рдПрдХ рдФрд░ рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпреЗ рдореВрд▓реНрдп рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдЬреНрдЮрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдпрдд рдХреА рд▓рдВрдмрд╛рдИ рдФрд░ рдЪреМрдбрд╝рд╛рдИ рдХреЗ рджрд┐рдП рдЧрдП рдореВрд▓реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдкрд░рд┐рдзрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЗрди рдореВрд▓реНрдпреЛрдВ рдХреЛ рджреЛрдЧреБрдирд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХрд╛рд░реНрдпрдХреНрд░рдо рдореВрд▓реНрдпреЛрдВ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдирд╣реАрдВ рдЬрд╛рди рд╕рдХрддрд╛ рд╣реИред рдпрд╛, рдлрд┐рд░ рд╕реЗ, рдЖрдкрдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ 1 рд╕реЗ 10 рдкреНрд▓рд╕ рдорд╛рдирдХ рддрд░реНрдХрд╣реАрдирддрд╛ рд╕реЗ рдкреНрд░рд╛рдХреГрддрд┐рдХ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рдорд╛рдиреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред)
4. рдЕрдЧрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рднреА рдкрд░реАрдХреНрд╖рдг рдЙрддреНрддрд░реЛрдВ рдХреЗ рд╕рднреА рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЙрд╕реЗ рдЕрднреА рднреА рдирд╣реАрдВ рдкрддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕рд╛ рд╕рд╣реА рд╣реИред рдпрджреНрдпрдкрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдкреНрд░рд╢реНрди рд╣реИ, рдФрд░ рдЯреВрд▓рдЯрд┐рдк рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред

рдЖрд╡реЗрджрди рдХрд╣рд╛рдВ рдХрд░реЗрдВ

1. рдЧрдгрд┐рдд, рднреМрддрд┐рдХреА рдореЗрдВ рд╕рд░рд▓ рдкрд░реАрдХреНрд╖рд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╕рдордпред
2. рдЬрд╣рд╛рдВ рдЗрдирдкреБрдЯ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдбреЗрдЯрд╛ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢реНрди:
1. рдпрджрд┐ рдЖрдк рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдореБрдлреНрдд рдореЗрдВ, рдЙрд╕ рд╕рд╛рдЗрдЯ рдкрд░ рдЬрд╣рд╛рдВ рдХреБрдЫ рд╡рд┐рдЬреНрдЮрд╛рдкрди рд╣реИ)?
2. рдХреНрдпрд╛ рдпрд╣ рдЕрд╕рддреНрдп рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ?
3. рдХреНрдпрд╛ рдЖрдк рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдПрдирд╛рд▓реЙрдЧреНрд╕ рдЬрд╛рдирддреЗ рд╣реИрдВ?

рдЫрд╡рд┐
рдЫрд╡рд┐

06/27/2013 рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдгред
рд╕рдВрд╕реНрдХрд░рдг 6.5
3 рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред рдПрдХ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдореВрд▓реНрдпреЛрдВ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдорд╛рдирдХ рдорд╛рди рдФрд░ рд╕реНрдерд┐рд░рд╛рдВрдХред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреЛрдИ рдкреНрд░реЛрдЧреНрд░рд╛рдо 5.8645461984 рд╕реЗ рдЖрд╡рд╢реНрдпрдХ sqrt (2) + sqrt (3) + exp (1) рдкрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╕рдВрд╕реНрдХрд░рдг 6.5:
 # -*- coding: cp1251 -*- #    #   #    # #This program fing algorithm of solving #using output data #and some input data # #       -1. C   . #       . from math import * import time start = time.time() # . output data. c = float(input ('output data: c=? ')) # . for tests. #c=sqrt(2)+sqrt(3)+exp(1) print c c=float(c) # . input data. d = input ('input some data as 1.9, 2.3, 5.2: d=? ') """ # . for tests. d=sqrt(2),sqrt(3),exp(1),3 """ d=list(d) d=[float(i) for i in d] """ #   . Indicator's sign of output data c1=1 #    . Indicator's sign is default positive. if c<0: c=-c c1=-1 #  -   .    . #Indicator's sign change ot negative. Take it into account in logarithms. """ #  . More standard constants. #z1=range(1,11) z1=[2,3,5,7] z2=[pi,exp(1),sqrt(2),sqrt(3)] z=z1+z2 d=d+z #  d = [e for i,e in enumerate(d) if e not in d[:i]] dold=d #1 iteration.  . #4 actions. 4 . #Error, must go to zero.  ,      . k=100.1 i=0 ddivlist=[] dmullist=[] dsublist=[] daddlist=[] while i<len(d): j=0 while j<len(d): #division.  ddiv=d[i]/d[j] ddivlist.append(ddiv) if abs(ddiv-c)<k: k=abs(ddiv-c) x=['ddiv =',ddiv, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[ddiv, '=', d[i], '/', d[j],'Error =',k] #multiplication.  dmul=d[i]*d[j] dmullist.append(dmul) if abs(dmul-c)<k: k=abs(dmul-c) x=['dmul =',dmul, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dmul, '=', d[i], '*', d[j],'Error =',k] #subtraction.  dsub=d[i]-d[j] dsublist.append(dsub) if abs(dsub-c)<k: k=abs(dsub-c) x=['dsub =',dsub, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dsub, '=', d[i], '-', d[j],'Error =',k] #addition.  dadd=d[i]+d[j] daddlist.append(dadd) if abs(dadd-c)<k: k=abs(dadd-c) x=['dadd =',dadd, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dadd, '=', d[i], '+', d[j],'Error =',k] j+= 1 i+=1 if x1[6]<0.000001: print x1 #   . #  , ,  ,   . #Prepare to next iteration. #Create full list, sort it, delete repeat, delete negative data. d4actions=ddivlist+dmullist+dsublist+daddlist d4actions.sort() d4actions = [e for i,e in enumerate(d4actions) if e not in d4actions[:i]] d4actions1=[] for i in d4actions: if i>0: d4actions1.append(i) d4actions=d4actions1 #-------------------------------------------------------------------- #2 iteration i=0 ddivlist=[] dmullist=[] dsublist=[] daddlist=[] d=d4actions #print d while i<len(d): j=0 while j<len(d): #division.  ddiv=d[i]/d[j] ddivlist.append(ddiv) if abs(ddiv-c)<k: k=abs(ddiv-c) x=['ddiv =',ddiv, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[ddiv, '=', d[i], '/', d[j],'Error =',k] #multiplication.  dmul=d[i]*d[j] dmullist.append(dmul) if abs(dmul-c)<k: k=abs(dmul-c) x=['dmul =',dmul, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dmul, '=', d[i], '*', d[j],'Error =',k] #subtraction.  dsub=d[i]-d[j] dsublist.append(dsub) if abs(dsub-c)<k: k=abs(dsub-c) x=['dsub =',dsub, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dsub, '=', d[i], '-', d[j],'Error =',k] #addition.  dadd=d[i]+d[j] daddlist.append(dadd) if abs(dadd-c)<k: k=abs(dadd-c) x=['dadd =',dadd, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dadd, '=', d[i], '+', d[j],'Error =',k] j+= 1 i+=1 print x1 #------------------------------ # . output data. #c = float(input ('output data: c=? ')) # . for tests. #c=sqrt(2)+sqrt(3)+exp(1) c=x1[4] print c c=float(c) # . input data. """ d = input ('input some data as 1.9, 2.3, 5.2: d=? ') """ """  . for tests. d=sqrt(2),sqrt(3),exp(1),3 d=list(d) """ #d=[float(i) for i in d] """ #   . Indicator's sign of output data c1=1 #    . Indicator's sign is default positive. if c<0: c=-c c1=-1 #  -   .    . #Indicator's sign change ot negative. Take it into account in logarithms. """ #  . More standard constants. #z1=range(1,11) """ z1=[2,3,5,7] z2=[pi,exp(1),sqrt(2),sqrt(3)] z=z1+z2 d=d+z #  d = [e for i,e in enumerate(d) if e not in d[:i]] """ d=dold #1 iteration.  . #4 actions. 4 . #Error, must go to zero.  ,      . k=100.1 i=0 ddivlist=[] dmullist=[] dsublist=[] daddlist=[] while i<len(d): j=0 while j<len(d): #division.  ddiv=d[i]/d[j] ddivlist.append(ddiv) if abs(ddiv-c)<k: k=abs(ddiv-c) x=['ddiv =',ddiv, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[ddiv, '=', d[i], '/', d[j],'Error =',k] #multiplication.  dmul=d[i]*d[j] dmullist.append(dmul) if abs(dmul-c)<k: k=abs(dmul-c) x=['dmul =',dmul, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dmul, '=', d[i], '*', d[j],'Error =',k] #subtraction.  dsub=d[i]-d[j] dsublist.append(dsub) if abs(dsub-c)<k: k=abs(dsub-c) x=['dsub =',dsub, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dsub, '=', d[i], '-', d[j],'Error =',k] #addition.  dadd=d[i]+d[j] daddlist.append(dadd) if abs(dadd-c)<k: k=abs(dadd-c) x=['dadd =',dadd, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dadd, '=', d[i], '+', d[j],'Error =',k] j+= 1 i+=1 if x1[6]<0.000001: print x1 #   . #  , ,  ,   . #Prepare to next iteration. #Create full list, sort it, delete repeat, delete negative data. d4actions=ddivlist+dmullist+dsublist+daddlist d4actions.sort() d4actions = [e for i,e in enumerate(d4actions) if e not in d4actions[:i]] d4actions1=[] for i in d4actions: if i>0: d4actions1.append(i) d4actions=d4actions1 """ #--------- # d[j] k=100.1 c=x1[4] print c i=0 ddivlist=[] dmullist=[] dsublist=[] daddlist=[] d=d4actions #print d while i<len(d): j=0 while j<len(d): #division.  ddiv=d[i]/d[j] ddivlist.append(ddiv) if abs(ddiv-c)<k: k=abs(ddiv-c) x=['ddiv =',ddiv, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[ddiv, '=', d[i], '/', d[j],'Error =',k] #multiplication.  dmul=d[i]*d[j] dmullist.append(dmul) if abs(dmul-c)<k: k=abs(dmul-c) x=['dmul =',dmul, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dmul, '=', d[i], '*', d[j],'Error =',k] #subtraction.  dsub=d[i]-d[j] dsublist.append(dsub) if abs(dsub-c)<k: k=abs(dsub-c) x=['dsub =',dsub, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dsub, '=', d[i], '-', d[j],'Error =',k] #addition.  dadd=d[i]+d[j] daddlist.append(dadd) if abs(dadd-c)<k: k=abs(dadd-c) x=['dadd =',dadd, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dadd, '=', d[i], '+', d[j],'Error =',k] j+= 1 i+=1 print x1 #----- # d[j] """ #   . #  , ,  ,   . #Prepare to next iteration. #Create full list, sort it, delete repeat, delete negative data. d4actions=ddivlist+dmullist+dsublist+daddlist d4actions.sort() d4actions1=[] for i in d4actions: if 0<i<=10: d4actions1.append(i) d4actions=d4actions1 #print len(d4actions) """ #-------------------------------------------------------------------- #3 iteration #MemoryError i=0 ddivlist=[] dmullist=[] dsublist=[] daddlist=[] d=d4actions #print d while i<len(d): j=0 while j<len(d): #division.  ddiv=d[i]/d[j] ddivlist.append(ddiv) if abs(ddiv-c)<k: k=abs(ddiv-c) x=['ddiv =',ddiv, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[ddiv, '=', d[i], '/', d[j],'Error =',k] #multiplication.  dmul=d[i]*d[j] dmullist.append(dmul) if abs(dmul-c)<k: k=abs(dmul-c) x=['dmul =',dmul, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dmul, '=', d[i], '*', d[j],'Error =',k] #subtraction.  dsub=d[i]-d[j] dsublist.append(dsub) if abs(dsub-c)<k: k=abs(dsub-c) x=['dsub =',dsub, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dsub, '=', d[i], '-', d[j],'Error =',k] #addition.  dadd=d[i]+d[j] daddlist.append(dadd) if abs(dadd-c)<k: k=abs(dadd-c) x=['dadd =',dadd, 'i =',i, 'd[i] =',d[i], 'j =',j, 'd[j] =',d[j],'Error =',k] x1=[dadd, '=', d[i], '+', d[j],'Error =',k] j+= 1 i+=1 print x1 #   . #  , ,  ,   . #Prepare to next iteration. #Create full list, sort it, delete repeat, delete negative data. d4actions=ddivlist+dmullist+dsublist+daddlist d4actions.sort() d4actions1=[] for i in d4actions: if 0<i<=10: d4actions1.append(i) d4actions=d4actions1 print len(d4actions) #d4actions = [e for i,e in enumerate(d4actions) if e not in d4actions[:i]] """ finish = time.time() #print 'time',(finish - start) 


рдЪрд┐рддреНрд░
рдЫрд╡рд┐

Source: https://habr.com/ru/post/In184556/


All Articles