Advertisement
Guest User

Untitled

a guest
Oct 29th, 2021
219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.99 KB | None | 0 0
  1. def pobranie_danych():
  2.     x = 30
  3.     while not (x <= 20 and x >= 1):  # Sprawdzenie czy podana liczba mieści się w przedziale 1-20
  4.         x = int(input("Prosze o podanie liczby elementów od 1 do 20: "))
  5.  
  6.     Tablica = []
  7.     for i in range(x):  # Iterowanie kolejnych liczb do tablicy
  8.         Tablica.append(int(input("proszę podać liczbę całkowitą do tablicy: ")))
  9.  
  10.     print(Tablica)
  11.     return Tablica
  12.  
  13.  
  14. def Algorytm_selekcji(Tablica,K):
  15.         mniejszychA = []
  16.         równyA = []
  17.         większyA = []
  18.         sum_mniejszych = 0
  19.         sum_większych = 0
  20.         sum_równych = 0
  21.         x = Tablica[0]
  22.  
  23.         for el_tablicy in Tablica:
  24.             if el_tablicy < x:
  25.                 sum_mniejszych += 1
  26.                 mniejszychA.append(el_tablicy)
  27.             elif el_tablicy > x:
  28.                 sum_większych += 1
  29.                 większyA.append(el_tablicy)
  30.             elif el_tablicy == x:
  31.                 sum_równych += 1
  32.                 równyA.append(el_tablicy)
  33.         print("mniejszych A<: "+ str(mniejszychA))
  34.         print("równych A=: "+ str(równyA))
  35.         print("większych A>: "+ str(większyA))
  36.         print("K: "+ str(K))
  37.         print("X: "+ str(x))
  38.         print("N: "+ str(len(Tablica)))
  39.         if K <= sum_mniejszych:
  40.             Algorytm_selekcji(mniejszychA,K)
  41.         elif sum_mniejszych < K <= (sum_mniejszych+sum_równych):
  42.             print("K-ty wyraz posortowanego ciągu wynosi: " + str(x))
  43.         elif K > (sum_mniejszych+sum_równych):
  44.             Algorytm_selekcji(większyA, (K - sum_mniejszych - sum_równych))
  45.  
  46.  
  47.  
  48.  
  49. def Implementacja_algorytmu_selekcji():
  50.     Tablica = pobranie_danych()     # Pobranie danych od urzytkownika
  51.     Kopia_tablicy = Tablica         # Tworzenie kopii Tablicy
  52.     Kopia_tablicy.sort()            # Sortowanie kopii Tablicy
  53.  
  54.     print(Tablica and Kopia_tablicy)
  55.  
  56.     K = int(input("Jaki jest szukany element K?: "))
  57.     Algorytm_selekcji(Tablica,K)
  58.  
  59. Implementacja_algorytmu_selekcji()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement