Wpis z mikrobloga

@Mega_Smieszek: wielka szkoda, że nie ma w matematyce czegoś takiego jak reszta z dzielenia. Przydałoby się to do sprawdzenia czy liczba jest parzysta. Muszę to opatentować. ( ͡~ ͜ʖ ͡°)
@strusmig: To nie jest takie oczywiste. Owszem, jest to popularna operacja i w przypadku absolutnej większości procesorów ogólnego przeznaczenia ALU będzie miało implementację takiej operacji. Może nawet jednocyklową. Jednakże w pewnych uproszczonych kontrolerach może nie być nawet mnożarki, nie mówiąc o dzieleniu modulo. W takim wypadku, jeśli mamy ograniczony zbiór danych to prosty LUT (a tutaj de facto mamy kretyńską implementacją LUTa) będzie wydajniejszy niż pozwolenie kompilatorowi na wygenerowanie absurdalnej ilości
@Saly: Właściwie już o tym zapomniałem bo na tle programowania to pracy dla elektroników to nie ma za wielu. A nie będę klepał sterowników do pieców węglowych czy kolejowych szaf za psie pieniądze...
A poruszam się już w systemach gdzie wydajność jest zwykle olewana bo zasoby są "nieograniczone".
Nie ma takiej funkcji o ile mi wiadomo ( ͡° ͜ʖ ͡°)


def is_odd(number: int) -> bool:

if number % 2 == 0:

return True

return False


@zgubiles_sie_jelonku: pytoniarzem nie jestem, ale coś takiego chyba zadziała do sprawdzenia czy number jest nieparzysty, to juz praktycnzie jak dedykowana funkcja :)

bool(number % 2)
@sadhas: tak, praktycznie w każdym języku tak jest. Wyjątkiem jest JS (i pewnie inne języki z słabym typowaniem też), bo tam trzeba jeszcze dodać ceremonię związaną z obchodzeniem się z wartością w taki sposób, żeby nie zrobić czegoś głupiego.

Zobacz jakie to cudaczne https://github.com/i-voted-for-trump/is-odd/blob/master/index.js

W pythonie było w sumie podobnie. W dawnych czasach przed pojawieniem się type hintów dobrą praktyką było walidowanie argumentów wejściowych na początku funkcji za pomocą ifów i
@pietryna123: każdy mikrokontroler umie w logikę. Do sprawdzania parzystości nie potrzebujesz dzielenia modulo. Wystarczy zrobić & 1 aby sprawdzić lsb. To pójdzie nawet na mikrokontrolerze za $0.10. Jak ktoś używa dzielenia modulo to od razu widzę że lama.
dzielenie i resztę przez 2 można zasymulować używająć odpowiednio: przesunięcia bitowego i and


@Saly: o ile mnie pamięć nie myli to dla większości kompilatorów popularnych języków to jeden pies, ofc pomijając te interpretowane jak pythong czy js