330 likes | 729 Views
Zagadnienia. Co to jest algorytm ?Etapy rozwiazywania problem
E N D
1. Algorytmy z przykladamiw Turbo Pascal 7.0
Sadowy Krystian
IV WT
2. Zagadnienia Co to jest algorytm ?
Etapy rozwiazywania problemw.
Zapis algorytmu w postaci graficznej schematy blokowe.
Sytuacje warunkowe.
Iteracja, czyli dzialanie w petli.
Przyklad schematu blokowego.
Wstep do programowania.
Prezentacja algorytmu w jezyku programowania.
Zakonczenie.
3. Co to jest algorytm ? Na lekcjach matematyki czy fizyki wiekszosc zadan rozwiazujemy wedlug pewnych schematw ( wypisanie danych, sprecyzowanie, ktre wartosci trzeba wyliczyc, czyli okreslenie szukanych ).Wypisujemy wzory laczace dane z szukanymi lub szukamy twierdzenia , ktre mozna by zastosowac. Rozwiazanie staramy sie opisac w mozliwie jasny sposb.
Na lekcjach z informatyki rwniez okreslalismy w zadaniach dane i warunki, ktre musza one spelniac, np. czy ma to byc tekst, liczba ( jej format ), data
4. Co to jest algorytm ? Okreslalismy tez wyniki, ktre chcemy otrzymac, a takze warunki, jakie powinny one spelniac. Rozpoczynalismy jednak od sformulowania zadania.
Opisanie zadania, czyli szukanie zwiazku, jaki zachodzi miedzy danymi a wynikami, nazywamy specyfikacja zadania.
Przedstawienie rozwiazania zadania w sposb uporzadkowany (tj. wyszczeglnienie kolejnych czynnosci) nazywamy algorytmem.
5. Etapy rozwiazywania problemw Sformulowanie zadania.
Okreslenie danych wejsciowych.
Okreslenie celu, czyli wyniku.
Poszukiwanie metody rozwiazania, czyli algorytmu.
Przedstawienie algorytmu w postaci:
- opisu slownego
- listy krokw
- schematu blokowego
- jednego z jezykw programowania
Analiza poprawnosci rozwiazania.
Testowanie rozwiazania dla rznych danych.
6. Zapis algorytmu w postaci graficznej schematy blokowe Sposoby rozwiazania zadan, czyli algorytmy, mozna prezentowac w postaci graficznej jako schematy blokowe.
W schemacie blokowym poszczeglne operacje przedstawione sa za pomoca odpowiednio polaczonych skrzynek (klockw, blokw). Polaczenia okreslaja kolejnosc i sposb wykonywania operacji realizujacych dany algorytm. Schemat blokowy jest wiec niczym innym , jak graficznym przedstawieniem ciagu krokw algorytmu.
W literaturze informatycznej przyjeto pewne standardowe oznaczenia poszczeglnych dzialan (sa to figury geometryczne).
7. Zapis algorytmu w postaci graficznej schematy blokowe
Oznaczenie miejsca rozpoczecia
(begin);, zakonczenia (end) lub
przerwania dzialania programu.
Wykonywanie rznych dzialan,
np. sumowania.
Operacje wprowadzania (read),
wyprowadzania (write) danych do,
z pamieci operacyjnej komputera.
8. Zapis algorytmu w postaci graficznej schematy blokowe Operacja warunkowa (if),
okreslajaca wybr jednej z dwch
mozliwych drg dzialania.
Proces okreslony poza
programem i z tego powodu nie
wymagajacy zdefiniowania w
rozpatrywanym programie
(podprogram).
Okresla kierunek przeplywu
danych lub kolejnosci
wykonywania zadan.
9. Sytuacje warunkowe Z sytuacjami warunkowymi stykamy sie w kazdej dziedzinie wiedzy i zycia codziennego. Na pytanie: Czy pada deszcz ? odpowiedz moze brzmiec tak lub nie. W zaleznosci od tego czy warunek jest spelniony czy nie , wybieramy inne rozwiazanie.
Z sytuacja warunkowa mamy wiec do czynienia wwczas, gdy wynik lub dalsze dzialanie zalezy od spelnienia warunku. Tak
10. Iteracja, czyli dzialanie w petli Czasem trzeba wykonac te same operacje na wielu liczbach. W takich przypadkach nie jest konieczne wielokrotne opisywanie takich samych dzialan. Stosujemy wwczas iteracje. Dzialania te wykonywane sa w petli. Liczba powtrzen tych samych dzialan moze byc z gry okreslona lub zalezec od spelnienia warunku.
11. Przyklad schematu blokowego
12. Wstep do programowania Do tej pory tworzylismy wlasne dokumenty rysunki, teksty, tabele arkusza kalkulacyjnego, proste bazy danych korzystajac z gotowych programw komputerowych. Wlasne programy piszemy poslugujac sie jezykami programowania, takimi jak Pascal, jezyk C, Basic. Do programowania sluza programy specjalne edytory wchodzace w sklad srodowiska programowania, zawierajace zwykle oprcz edytora kompilator i inne narzedzia wspomagajace programowanie, np.: Turbo Pascal, C++, Visual Basic, Delphi.
Program jest to ciag instrukcji wykonujacy okreslony algorytm. Aby zatem napisac wlasny program, musimy poznac nie tylko instrukcje danego jezyka programowania, ale przede wszystkim metody programowania.
13. Prezentacja algorytmu w jezyku programowania Aby przedstawic algorytm w postaci programu, trzeba go napisac jako ciag instrukcji jezyka programowania. Kazda instrukcja podobnie jak skrzynka w schemacie blokowym odpowiada okreslonej operacji, dlatego tez kolejnosc wystepowania instrukcji w programie okresla kolejnosc wykonywania operacji.
Nauka programowania nie polega jednak na nauczeniu sie na pamiec instrukcji danego jezyka, ale na zrozumieniu zasad ich dzialania oraz na umiejetnym ich zastosowaniu.
14. Prezentacja algorytmu w jezyku programowania Struktura programu.
Instrukcje wyjscia (write i writeln).
Instrukcje wejscia (read i readln).
Zmienne i najczesciej stosowane typy.
Warunkowa instrukcja If.
Petla For.
15. Struktura programu Poprawny program w Turbo Pascalu ma okreslona strukture.
Wyglada ona nastepujaco:
Program nazwa_programu;
{ blok deklaracji }
Begin
{ blok instrukcji }
End.
W bloku deklaracji znajduja sie deklaracje zmiennych.
Blok instrukcji zawiera ciag instrukcji przeznaczonych do wykonania
przez program, oddzielonych od siebie srednikami.
Komentarze zaznaczamy nawiasami klamrowymi {..}.
16. Instrukcje wyjscia (write i writeln) Write() - powoduje wypisanie wartosci wyrazenia zawartego w nawiasie.
Writeln() - powoduje wypisanie wartosci wyrazenia zawartego w nawiasie i przejscie do nowego wiersza.
17. Instrukcje wyjscia (write i writeln) Program wypisuje imie i nazwisko w pierwszym wierszu a w drugim adres osoby.
Algorytm
Kod zrdlowy
Uruchomienie programu
18. Program obrazujacy instrukcje wyjscia Start
19. Program obrazujacy instrukcje wyjscia Program Dane;
{ Program wypisuje imie i nazwisko w pierwszym wierszu }
{ a w drugim adres osoby. }
Begin
Writeln (Krystian Sadowy);
Writeln (ul. Klonowa 35/3, 68-100 Zagan);
End.
20. Instrukcje wejscia (read i readln) Bardzo czesto zdarza sie taka sytuacja, ze chcielibysmy, aby
uzytkownik podal dane, ktre nastepnie beda przez program
przetwarzane. Sluza do tego instrukcje read i readln.
Read - powoduje odczytanie danych z klawiatury w takiej liczbie, ile
miala argumentw i takich typw, jakie dla nich zadeklarowano.
Wpisywanie danych musi zostac zakonczone wcisnieciem klawisza
Enter.
Readln jak powyzej tylko po wykonaniu instrukcji powoduje przejscie
do nowego wiersza.
21. Instrukcje wejscia (read i readln)
Program wczytuje dwie liczby i wypisuje ich sume.
Algorytm
Kod zrdlowy
Uruchomienie programu
22. Program obrazujacy instrukcje wejscia Start
23. Program obrazujacy instrukcje wejscia Program Sumowanie;
{ Program wczytuje dwie liczby i wypisuje ich sume. }
Var
Liczba1, Liczba2, Suma : Integer;
Begin
Write (Podaj pierwsza liczbe: );
Readln (Liczba1);
Write (Podaj druga liczbe: );
Readln (Liczba2);
Suma := Liczba1 + Liczba2;
Writeln (Podales ,Liczba1, i ,Liczba2,. Ich suma to: ,Suma);
End.
24. Zmienne i najczesciej stosowane typy Zmienne mozna sobie wyobrazic jako pojemniki, przechowujace dane
w trakcie wykonania programu. Zmienne posiadaja swoje nazwy,
poprzez ktre mozna odwolywac sie do ich zawartosci. Musza zostac
zadeklarowane w bloku deklaracji w sekcji Var. Po tym slowie
kluczowym mozna je definiowac, poslugujac sie postacia nazwa :
typ. Kolejne deklaracje nalezy oddzielac srednikami.
Przyklad:
Program Przyklad;
Var
A : Integer;
B : String;
25. Typy zmiennych Cecha nieodlacznie zwiazana z kazda zmienna jest jej typ,
czyli rodzaj danych, ktre moze pamietac. Typ zmiennej nalezy okreslic
juz przy jej deklaracji i nie mozna go zmieniac.
Najczesciej stosowane typy to:
Byte - Liczba staloprzecinkowa z zakresu 0.255.
Integer - Liczba staloprzecinkowa z zakresu -3276832767.
Char - Pojedynczy znak ASCII.
String Lancuch znakw (czyli tekst), nie dluzszy niz 255 znakw.
Real Liczba zmiennoprzecinkowa.
Boolean Wartosc logiczna.
26. Warunkowa instrukcja IF Dziala w ten sposb, ze sprawdzana jest wartosc warunku. Jezeli jest
on prawdziwy wykonywany jest blok instrukcji 1, a jezeli nie
blok instrukcji 2.
Przyklad:
If Warunek Then
{ blok instrukcji 1 }
Else
{ blok instrukcji 2 }
27. Warunkowa instrukcja If
Program wczytuje dwie liczby i wypisuje najwieksza z nich.
Algorytm
Kod zrdlowy
Uruchomienie programu
28. Program obrazujacy instrukcje If Program Warunek;
{ Program wczytuje dwie liczby i wypisuje najwieksza z nich. }
Var
Liczba1, Liczba2 : Integer;
Begin
Write (Podaj pierwsza liczbe: );
Readln (Liczba1);
Write (Podaj druga liczbe: );
Readln (Liczba2);
If (Liczba1>Liczba2) Then
Writeln (Najwieksza z liczb to: ,Liczba1);
Else
Writeln (Najwieksza z liczb to: ,Liczba2);
Readln;
End.
29. Program obrazujacy instrukcje If If 1 liczba > 2 liczba
30. Petla For Czesto zdarza sie w programie, ze jakas czynnosc chcemy wykonac
wiele razy. Pascal oferuje nam kilka mozliwosci zapetlenia,
czyli wielokrotnego wykonywania bloku instrukcji. Najprostsza jest petla
for. Ma ona postac:
For zmienna := poczatek To koniec Do
{ blok instrukcji }
Cz oznacza taki zapis ? Otz blok instrukcji bedzie wykonywany
wielokrotnie, dla zmiennej przyjmujacej kolejno kazda wartosc od
poczatek do koniec.
Zmienna, ktrej wartosc jest sprawdzana w petli, nosi nazwe zmiennej
sterujacej.
31. Petla For
Program wypisuje na ekranie liczby od 1 do 10.
Algorytm
Kod zrdlowy
Uruchomienie programu
32. Program obrazujacy instrukcje For
Program Petla;
{ Program wypisuje liczby od 1 do 10. }
Var
i : Byte;
Begin
For i := 1 To 10 Do
write (i, );
Writeln;
Readln;
End.
33. Program obrazujacy instrukcje For i=i+1
34. Zakonczenie Obecnie istnieje mnstwo innych jezykw programowania - w tej chwili
bardzo popularnych, o ktrych duzo sie pisze, i w ktrych duzo sie
pisze. Kto dzisiaj pisze prawdziwe programy w Turbo Pascalu ?
Odpowiedz brzmi nikt. Pascal jest jednak najlepszym sposobem
opisu rozwiazywania problemw informatycznych ( czyli prezentacji
algorytmw ). Jego trzon powstal wlasnie w tym celu i ciagle do nauki
podstaw programowania jest niezastapiony. Nauke tego jezyka
programowania nalezy traktowac jedynie jako srodek do nauki
myslenia programistycznego, a nie jako cel sam w sobie. Znajac ten
jezyk, nauka innych nie bedzie dla Ciebie duzym problemem, a metody
rozwiazywania postawionych zadan beda podobne.