Advertisement
miklis

fraction addition precoded in Latex

Apr 25th, 2016
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.15 KB | None | 0 0
  1. def st(num):
  2. if num<0:
  3. return '('+str(num)+')'
  4. else: return str(num)
  5. from random import*
  6. array=[1,2,3,5,7,11,13,17]
  7.  
  8. o=[]
  9. ats=[]
  10. while(len(o)<28):
  11. aa=randint(0,16)
  12. bb=randint(0,16)
  13. cc=randint(0,16)
  14. dd=randint(0,16)
  15. a=[-1,-2,-3,-5,-7,-11,-13,-17, 0, 1,2,3,5,7,11,13,17][aa]
  16. b=[-1,-2,-3,-5,-7,-11,-13,-17, 0, 1,2,3,5,7,11,13,17][bb]
  17. c=[-1,-2,-3,-5,-7,-11,-13,-17, 0, 1,2,3,5,7,11,13,17][cc]
  18. d=[-1,-2,-3,-5,-7,-11,-13,-17, 0, 1,2,3,5,7,11,13,17][dd]
  19. #=[1,2,3,5,7,11,13,17][randint(0,7)]
  20. i=a*d+b*c
  21. j=b*d
  22. o.append('\\task $ \\frac{'+str(a)+'}{'+str(b)+'}'+'+ \\frac{'+str(c)+'}{'+str(d)+'}$')
  23. if i==0: ats.append('\\task $0$')
  24. elif abs(j)==1: ats.append('\\task $'+str(i*j)+'$')
  25. elif j==0: ats.append('\\task E')
  26. elif i==0: ats.append('\\task $0$')
  27. elif i==j: ats.append('\\task $'+ ['-',''][(i*j/abs(i*j)+1)/2]+'1'+'$')
  28. else: ats.append('\\task $'+ ['-',''][(i*j/abs(i*j)+1)/2]+'\\frac{'+str(abs(i))+'}{'+str(abs(j))+'}'+'$')
  29. print '\\begin{tasks}(4)'
  30. for n in o: print n
  31. print '\\end{tasks}'
  32. print '\\begin{tasks}(6)'
  33. for n in ats: print n
  34. print '\\end{tasks}'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement