Pchełki Python: zagadka

Nadszedł czas na kolejną zagadkę. Tym razem zamiast uwalniać więźniów, mierzyć prędkości koni czy też pstrykać przełącznikami, zerkniemy sobie na pewną tajemniczą funkcję. Zagadka brzmi: co robi poniższa funkcja? Pytanie bonusowe: dlaczego poniższa funkcja działa poprawnie? (kod jest w Pythonie, co zresztą wynika z tytułu dzisiejszego wpisu) # POCZĄTEK KODU import re def funkcja_zagadka(n): return … Continue reading Pchełki Python: zagadka

Pchełki Python: liczby N-wskaźnikowe

Tym razem na najbardziej bezużytecznym w tej części galaktyki blogu zaprezentujemy jakże fascynujące zagadnienie liczb pierwszych wskaźnikowych. Zapewniam, że ci z Czytelników, którzy dotychczas o owych tajemniczych liczbach nie słyszeli, zostaną za chwil parę Oświeceni. Spłynie na Was łaska Wiedzy, dzięki czemu Wasze życia będą pełniejsze, samice Waszych jaków będą dawać więcej mleka, a sandały … Continue reading Pchełki Python: liczby N-wskaźnikowe

Pchełki Python: narcystycznie

TL; DR: Dziś będzie troszkę matematyki rekreacyjnej, jak pogardliwie zwykli byli nazywać tego typu łamigłówki Prawdziwi Matematycy, czyli - jak mawiał Wieszcz - ludzie, którzy potrafią policzyć do Dwudziestu bez zdejmowania Butów. Liczba narcystyczna to taka liczba k-cyfrowa, która jest sumą k-tych potęg własnych cyfr. Ktoś upierdliwy (są tacy na sali?) mógłby się przypieprzyć do … Continue reading Pchełki Python: narcystycznie

Pchełki Python: Test Millera-Rabina

Dziś pokażę, w jaki sposób sprawdzić pierwszość naprawdę wielkich liczb. Niedawno, w ramach odrdzewiania swojej (i tak raczej mizernej) wiedzy o Pythonie postanowiłem policzyć sobie wszystkie liczby pierwsze od dwójki do miliarda. Uczyniłem swój kod odpornym na pady zasilania - co jakiś czas zapisywał on bieżący stan (czyli listę aktualnie wyliczonych liczb pierwszych) do pliku, … Continue reading Pchełki Python: Test Millera-Rabina

Pchełki Python: liczbowy most

Jak niedawno wspominałem, lubię od czasu do czasu ponaprężać mózguły. Rozciąganie aksonów jeszcze nikomu nie zaszkodziło, no i fajnie jest zmierzyć się czasem z jakimś problemem i go samodzielnie rozwiązać. Tylko teraz tak: załóżmy, że mamy gwóźdź oraz dwie deski, które owym gwoździem mamy za zadanie połączyć. Czy jeżeli użyjemy młotka, zamiast udawać Gustlika (z … Continue reading Pchełki Python: liczbowy most

Pchełki Python: Euler II

Dziś drugi problem z listy Eulera, czyli dla odmiany posumujemy sobie trochę liczb całkowitych. Podobnie zresztą jak w poprzedniej Pchełce, gdzie sumowaliśmy wielokrotności trójek i piątek, oraz w jeszcze poprzedniej, gdzie z kolei sumowaliśmy liczby pierwsze. Dziś posumujemy sobie wyrazy ciągu Fibonacciego, ale tylko te parzyste. A po cholerę? Zamiast tego moglibyśmy na przykład pójść … Continue reading Pchełki Python: Euler II

Pchełki Python: Euler X

Niniejszy wpis łączy w sobie kilka ulubionych przeze mnie tematów, a więc spodziewam się z niego całkiem sporej ilości frajdy. Przynajmniej dla mnie... Tytuł dzisiejszego wpisu pochodzi ze strony http://projecteuler.net - jest to strona z zadaniami matematyczno-logicznymi idealnymi do ćwiczenia różnych języków programowania. Dzisiaj zajmiemy się zagadką numer 10, czyli będziemy sumować liczby pierwsze. Ha! … Continue reading Pchełki Python: Euler X

Zagadka o stu przełącznikach, wersja w Pythonie

Dawno, dawno temu, wrzuciłem na bloga zagadkę matematyczną o stu przełącznikach. Zagadka cieszyła się umiarkowaną oglądalnością, ludzie bowiem trafiają do mnie szukając konkretów, a nie jakichś durnych zagadek. Niemniej jednak kilkanaście osób wpis przeczytało, a to już całkiem nieźle. Dziś chciałbym pokazać, w jaki sposób zagadkę tę rozwiązać przy pomocy Pythona. Głównym celem będzie, oczywiście, … Continue reading Zagadka o stu przełącznikach, wersja w Pythonie

Pchełki Python: kończymy temat palindromów czasowych

Niedawno pisałem o ważnych datach i godzinach palindromicznych, czyli datach (i godzinach), kiedy ilość jednostek czasu od Chwili Zero (rozumianej jako północ 31 grudnia 1899 roku) do danej daty jest liczbą palindromiczną. Niestety, na sekundach poległem, ponieważ ilość sekund, jaka upłynęła od Chwili Zero do dzisiaj jest większa niż dwa miliardy, w związku z czym … Continue reading Pchełki Python: kończymy temat palindromów czasowych

Pchełki Python: Fibonacci

Pchełka o ciągu Fibonacciego już była. Ale tam to było w SQL-u, czyli w języku tak przydatnym do obliczeń numerycznych, jak puzon do produkcji twarogu. Tym razem spróbujemy użyć języka bardziej nadającego się do matematycznych wybryków, czyli Pythona. Celem dzisiejszej Pchełki nie jest pokazanie, jak wyliczyć ciąg Fibonacciego ani nawet wyjaśnienie czymże ów ciąg jest. … Continue reading Pchełki Python: Fibonacci

Pchełki Python: za ciosem

Niedawno opublikowałem pchełkę rozwiązującą prościutkie, acz względnie interesujące zadanie matematyczne: ile potęg dwójki należy wygenerować, aby w zestawie wyników dostać każdą cyfrę od 0 do 9 przynajmniej raz? Chwilę potem zadumałem się: a co, gdyby zamiast dwójki wziąć trójkę? albo piątkę? Efektem owej zadumy jest kolejna pchełka, którą dziś prezentuję. Jest to rozwinięcie pchełki z … Continue reading Pchełki Python: za ciosem

Pchełki Python, odcinek 4: yield

Odkryłem niedawno nową konstrukcję programistyczną, która nieco zatrzęsła posadami mojego świata, widzianego oczyma programisty-amatora starej daty. Należy bowiem wiedzieć, że mam za sobą wiele lat programowania w tak ezoterycznych językach jak Logo, QBasic oraz VBA, natomiast języków "porządnych" nauczyć się za młodu nie miałem za bardzo okazji. Albo raczej: okazja była, ale jakoś "nie wyszło". … Continue reading Pchełki Python, odcinek 4: yield

Pchełki Python, odcinek 3: kombinujemy

Jeżeli ktoś zagląda na tego bloga częściej niż raz w życiu... Takich osób jest zaskakująco dużo (ale nigdy więcej niż jedna na raz), na przykład ktoś szukający tekstu "paraboliczny kondensator moczu wielbłąda dżungarskiego" znajdzie go właśnie tutaj; szanse, że to ten sam człowiek szukać będzie informacji o trzpieniu wału korbowego lewoskrętnej przekładni Torquiste'a są praktycznie … Continue reading Pchełki Python, odcinek 3: kombinujemy

Pchełki Python, odcinek 2: pierwsze mniejsze od miliona

Dziś druga pchełka z kodem Python; tym razem wyliczymy sobie wszystkie liczby pierwsze mniejsze od miliona. Google mówi, że jest ich 78498. Opisy poszczególnych instrukcji umieściłem wewnątrz kodu, w formie komentarzy. Miłej lektury... # komentarze w Pythonie wstawiamy w ten sposób. Nie ma tutaj komentarzy blokowych (/* ... */) znanych z C import math, time … Continue reading Pchełki Python, odcinek 2: pierwsze mniejsze od miliona

W uścisku Pythona

Jak się moi wierni Czytelnicy (a można ich policzyć na palcach pijanego pracownika tartaku) zdążyli zorientować, od czasu do czasu publikuję na łamach swego bloga pchełki. Dotychczas pchełki dzieliły się na dwie kategorie: VBA oraz SQL. Od niedawna próbuję wgryźć się w Pythona. Jakkolwiek dwuznacznie by to nie brzmiało, zapewniam, że nie chodzi o żadne … Continue reading W uścisku Pythona