Advertisement
Patresss

lab02_a

Mar 17th, 2015
425
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.02 KB | None | 0 0
  1. #!/user/bin/env python 3.4
  2.  
  3. from sys import argv
  4. import math
  5. import random
  6.  
  7. import os
  8. os.system('clear')
  9.  
  10.  
  11. def isPalindrome(liczba):
  12.     stri_licz=str(liczba)
  13.     pol_dl=math.floor(len(stri_licz)/2)
  14.     for i in range(pol_dl):
  15.         if stri_licz[i] != stri_licz[-i-1]:
  16.             return False
  17.  
  18.     return True
  19.  
  20.  
  21.  
  22.  
  23.  
  24. #1_________________________________
  25. def zad_1():
  26.     print("Zadanie 1: ")
  27.     if len(argv)==1:
  28.         print("Za malo elementow")
  29.         raise SystemExit
  30.     print(argv[1], "jest polindromem: ",isPalindrome(argv[1]))
  31.  
  32. #2_________________________________
  33. def zad_2():
  34.     print("Zadanie 2: ")
  35.     slow={}
  36.     for i in range(100):
  37.         temp=random.randint(100,10000)
  38.         if temp not in slow:
  39.             slow[temp]=isPalindrome(temp)
  40.     print (slow)
  41.  
  42. #3_________________________________
  43. def zad_3():
  44.     print("Zadanie 3: ")
  45.     list_rand=[random.randint(0, 20) for i in range(100)]
  46.     #print("Lista rand:",list_rand)
  47.  
  48.     slow_n={}
  49.     slow_p={}
  50.  
  51.     for i in range(20):
  52.         if i%2==0:
  53.             slow_p[i]=[j for j, x in enumerate(list_rand) if x == i]
  54.         else:
  55.             slow_n[i]=[j for j, x in enumerate(list_rand) if x == i]
  56.    
  57.     #print("Parzyste: ",slow_p)
  58.     #print("Nieparzyste: ",slow_n)
  59.  
  60.     stat=slow_p
  61.     print("Lista parzyste:",stat)
  62.  
  63.     for i in range(0,20,2):
  64.         if len(stat[i])%2==0:
  65.             mediana=( stat[i][ math.floor(len(stat[i])/2) -1 ]  + stat[i][ math.floor(len(stat[i])/2) ] )/2
  66.         else:
  67.             mediana=stat[i][ math.floor( len(stat[i])/2 ) ]
  68.  
  69.         stat[i]=(mediana, max(stat[i]) - min(stat[i]))
  70.  
  71.     print("Lista rand ze statystyka:", stat)
  72.  
  73. #4_________________________________
  74. def zad_4():
  75.     print("Zadanie 4: ")
  76.     if len(argv)==1:
  77.         print("Za malo elementow")
  78.         raise SystemExit
  79.     elif not argv[1].isnumeric():
  80.         print("Argv[1] nie jest liczba")
  81.         raise SystemExit
  82.  
  83.     size=int(argv[1])
  84.     slownik={}
  85.     for i in range(size):
  86.         slownik[i]=random.randint(2, 15)
  87.     print("Slownik: ",slownik)
  88.  
  89.     lista=[(slownik[i],i) for i in slownik]
  90.     slownik_odw={j:i for i, j in slownik.items()}
  91.     lista.append(slownik_odw)
  92.     print ("Lista:",lista)
  93.  
  94. #5_________________________________
  95. def zad_5():
  96.     print("Zadanie 5: ")
  97.     max_r=11   
  98.     lista=[random.randint(0,max_r) for x in range(100)]
  99.     print("Lista",lista)
  100.     slownik={}
  101.     for i in range(max_r+1):
  102.         slownik[i]=[j for j,x in enumerate(lista) if x==i]
  103.  
  104.     print("Slownik2:", slownik)
  105.  
  106. #6_________________________________
  107. def zad_6():   
  108.     print("Zadanie 6: ")
  109.     slownik_1={i:random.randint(1,100) for i in range(10)}
  110.     slownik_2={i:random.randint(1,100) for i in range(10)}
  111.     print("Slownik_1:",slownik_1)
  112.     print("Slownik_2:",slownik_2)
  113.  
  114.     slownik_1_odw={j:i for i,j in slownik_1.items()}
  115.     slownik_2_odw={j:i for i,j in slownik_2.items()}
  116.     print("Slownik_1 po odwrocie:",slownik_1_odw)
  117.     print("Slownik_2 po odwrocie:",slownik_2_odw)
  118.  
  119.     slownik={}
  120.  
  121.     for key in slownik_1_odw:
  122.         if key in slownik_2_odw:       
  123.             slownik[key]=(slownik_1_odw[key],slownik_2_odw[key])
  124.  
  125.     print("Nowy slownik z kluczami z slownik slownik_1_odw i slownik_2_odw:",slownik)
  126.  
  127.  
  128. #main_________________________________
  129.  
  130. #zad_1()
  131. #zad_2()
  132. #zad_3()
  133. #zad_4()
  134. #zad_5()
  135. zad_6()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement