Advertisement
furas

Maple - zestaw 6 - zadanie 2

Jun 11th, 2015
310
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.78 KB | None | 0 0
  1. #-------------------------
  2. # zadanie 2 a
  3. #-------------------------
  4.  
  5. def policz(a,b):
  6.    
  7.     wynik = 0
  8.    
  9.     while a != b:
  10.         wynik = wynik + 1
  11.         if a < b:
  12.             b = b - a
  13.         else:
  14.             a = a - b
  15.            
  16.     return wynik
  17.  
  18. #-------------------------
  19.  
  20. print policz(1,1) # 0
  21.  
  22. print policz(1,2) # 1
  23. print policz(2,1) # 1
  24.  
  25. print policz(1,3) # 2
  26. print policz(3,2) # 2
  27. print policz(2,3) # 2
  28. print policz(3,1) # 2
  29.  
  30. print policz(3,5) # 3
  31. print policz(5,3) # 3
  32.  
  33. print policz(8,5) # 4
  34. print policz(7,3) # 4
  35.  
  36. #-------------------------
  37. # zadanie 2 b
  38. #-------------------------
  39.  
  40. def nty(n):                     # nty := proc(n)
  41.  
  42.                                 # local lista, k, a, b, x;
  43.  
  44.     lista = [ [1,1] ]           # lista := [ [1,1] ];
  45.     k = 0                       # k := 1;
  46.  
  47.     while len(lista) <= n:      # while nops(lista) <= n+1 do
  48.         x = lista[k]            #   x := op(k, lista);
  49.         a = x[0]                #   a := op(1, x);
  50.         b = x[1]                #   b := op(2, x);
  51.         k += 1                  #   k := k + 1;
  52.         lista.append( (a,a+b) ) #   lista := [ op(lista), [a,a+b], [a+b,b] ];
  53.         lista.append( (a+b,b) )
  54.                                 # do;
  55.     return lista, lista[n]      # op(n, lista);
  56.                                 # end:
  57. #------------------------
  58.  
  59. n = 7
  60. lista, wynik = nty(n)
  61. print lista
  62. print n, ':', wynik
  63.  
  64. # [(1, 1), (1, 2), (2, 1), (1, 3), (3, 2), (2, 3), (3, 1), (1, 4), (4, 3)]
  65. # 7 : (1, 4)
  66.  
  67. n = 22
  68. lista, wynik = nty(n)
  69. print lista
  70. print n, ':', wynik
  71.  
  72. # [(1, 1), (1, 2), (2, 1), (1, 3), (3, 2), (2, 3), (3, 1), (1, 4), (4, 3), (3, 5), (5, 2), (2, 5), (5, 3), (3, 4), (4, 1), (1, 5), (5, 4), (4, 7), (7, 3), (3, 8), (8, 5), (5, 7), (7, 2)]
  73. # 22 : (7, 2)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement