niedziela, 19 października 2008

Czym są algorytmy?

Z szeroko pojętymi algorytmami każdy z nas spotykał się w swoim życiu już od najmłodszych lat. Nie wierzysz? A robiłeś sobie kiedyś kanapki? "Przepis" jak zrobić te kanapki to właśnie algorytm.
1. Weź kromkę chleba.
2. Posmaruj ją masłem.
3. Połóż na to np. ser/wędlinę.

Z innymi algorytmami spotykaliśmy się już w wieku 6-7 lat. Było nim dodawanie. Naprawdę! A algorytm ten wygląda następująco (dodamy tu 3+2):
1. Masz zaciśniętą rękę.
2. Licząc prostujesz palce.
3. Policz na palcach do 3.
4. Od miejsca w którym skończyłeś liczyć policz jeszcze do 2.
5. Policz od początku ile masz palców wyprostowanych.

Jak widzisz, od zawsze mamy do czynienia z algorytmami. Spytaj się np. mechanika jak On wymienia olej w samochodach. Zależnie od marki samochodu algorytm wymiany oleju silnikowego nieznacznie się zmienia.
Jak widzisz Algorytmy są to przepisy jak coś wykonać. Aby mogły one funkcjonować, muszą składać się ze skończonej liczby instrukcji/kroków. Wyobraźmy sobie powyższy algorytm na robienie kanapki, gdy po kroku 2-gim dodamy krok "wróć do kroku 1".
1. Weź kromkę chleba.
2. Posmaruj ją masłem.
3. Wróć do kroku 1.
4. Połóż na to np. ser/wędlinę.

Teraz nigdy nie dojdziemy do kroku 4-tego. Ponieważ będziemy wiecznie wracać do kroku 1. Dlatego w/w przykład już nie jest algorytmem.

Na tym blogu postaramy się w łatwy i zrozumiały sposób przedstawiać algorytmy informatyczne, a może czasem też matematyczne. Zaczynając od tych najprostszych.

2 komentarze:

KruczoCzarny pisze...

Dobra robota i niezły pomysł z tym blogiem, trzymam kciuki byście w nim wytrwali :)

Lecz nie byłbym soba, gdybym nie przyczepił się do czegoś :P
W tym wypadku do okreslenia "Dlatego w/w przykład już nie jest algorytmem." Jako że to jednak jest algorytm, ale innego rodzaju, proponowałbym pisanie raczej w stylu "Dlatego w/w przykład już nie jest algorytmem, którym się zajmujemy."

rozumiem, ze nie chcecie zbyt komplikować - ale, imho, nie powinniście też wprowadzać w błąd.

Poza tym uwag brak :P

Fenix pisze...

Dzięki. Zobaczymy jak długo damy radę. Zmieniłem info. :) Ale wydawało mi się, że algorytmy cechuje właśnie skończoność i we wszystkich definicjach algorytmów tak jest napisane, dlatego tak napisałem...
Bo chodzi Ci tutaj chyba o fraktale?