Rozwiązane

Bardzo bym prosiła by ktoś mi pomoógł. Liczbami bliźniaczymi nazywamy liczby pierwsze których różnica wynosi 2, np. 3 i 5, 5 i 7, 11 i 13. Na podstawie tego co znajduje się na dole napisz program który znajduje liczby bliźniacze.

import math
def czy_pierwsza(x):
liczby_pierwsze = []
for i in range(1,round(math.sqrt(x))):
if x % i == 0:
liczby_pierwsze.append(i)
if len(liczby_pierwsze)==1:
return f'Liczba {x} jest pierwsza'
return f'Liczba {x} NIE jest pierwsza'

print(czy_pierwsza(17))


# liczby blizniacze to takie które różnią się o dwa
# np. 3 i 5 , 5 i 7 itd

# def blizniacze(x):
# return liczbe blizniaczą



Odpowiedź :

Odpowiedź

Kod w pytonie i wynik w załącznikach.

Zupełnie coś innego napiszę w Twoim drugim pytaniu.

Wyjaśnienie

Właściwie zmieniłam wszystko... Począwszy od tego, że zmiennej odnoszącej się do liczby naturalnej lub całkowitej raczej nie nazwałabym x.

Oczywiście sprawdzone pod replit.

  1. Nie tylko w pytonie, ale ogólnie w programowaniu łatwiej i zwykle lepiej rozwiązywać problemy etapami (małymi krokami). Dlatego niech funkcja czy_pierwsza() robi tylko to na co wskazuje jej nazwa: sprawdza czy podana liczba jest pierwsza.
  2. Tutaj podałam przykład, że funkcja czy_jest_z_liczb_bliźniaczych() tylko sprawdza właśnie to, czy podana liczba jest jedną z liczb bliźniaczych... Oczywiście nie jest to jedyne możliwe rozwiązanie zadania.

Współczuję kiepskiego podręcznika i lekcji z których trudno wynieść coś pozytywnego.

Zobacz obrazek 0AB
Zobacz obrazek 0AB