Amacınız verilen bir sayının nen az baytta asal olup olmadığını belirlemektir . Ancak, kodunuz yalnızca aşağıdakilerden oluşan sayılar üzerinde tek bir Python 2 ifadesi olmalıdır
- operatörler
- giriş değişkeni
n - tamsayı sabitleri
- parantez
Döngü yok, atama yok, yerleşik işlev yok, yalnızca yukarıda listelenenleri. Evet mümkün.
Operatörler
İşte Python 2'deki aritmetik, bitsel ve mantıksal işleçleri içeren tüm işleçlerin bir listesi :
+ adddition
- minus or unary negation
* multiplication
** exponentiation, only with non-negative exponent
/ floor division
% modulo
<< bit shift left
>> bit shift right
& bitwise and
| bitwise or
^ bitwise xor
~ bitwise not
< less than
> greater than
<= less than or equals
>= greater than or equals
== equals
!= does not equal
Tüm ara değerler tamsayılar (veya 0 ve 1'e tamamen eşit olan False / True). Üfleme negatif kayanlarla kullanılamaz, çünkü bunlar yüzebilir. Not /Python 3 farklı olarak zeminden bölünmesini yapar, böylece //gerekli değildir.
Python'u tanımasanız bile, operatörler oldukça sezgisel olmalıdır. Dilbilgisinin ayrıntılı bir belirtimi için operatör önceliği ve bu bölüm ve altındaki bu tabloya bakın . Şunları yapabilirsiniz TIO üzerinde Python 2 koşmak .
I / O
Giriş:n En az 2 olan pozitif bir tamsayı .
Çıktı: Eğer nasal ise 1 , aksi takdirde 0. Trueve Falseayrıca kullanılabilir. En az bayt kazanır.
Kodunuz bir ifade olduğundan, bir snippet olacaktır, giriş değerini olarak depolanan nve istenen çıktısını değerlendirir.
Kodunuz, nkeyfi olarak büyük, bir kenara sistem sınırları için çalışması gerekir . Python'un tam sayı türü sınırsız olduğundan, operatörlerde sınır yoktur. Kodunuzun çalışması uzun sürebilir.