Zadanie 1
Podaj przykłady algorytmów związanych z życiem codziennym lub innymi - poza informatyką - przedmiotami szkolnymi
Odpowiedź
I wiele innych...
- Gotowanie jajka na twardo
- Rozpalanie w piecu
- Robienie kiślu
- Robienie budyniu
- Wiązanie butów
- Zrobienie kanapki
- Pieczenie ciasta
- Stworzenie obrazu
- Rozpalenie ogniska
- Rozwiązywanie równań matematycznych
Zadanie 2
Podaj specyfikację zadania i skonstruuj algorytm gotowania jajka na twardo w postaci listy kroków.
Specyfikacja
Wejście: Jajko, woda, garnek, kuchenka elektryczna
Wyjście: Jajko na twardoLista kroków
Krok 1. Położyć garnek na kuchence i włączyć ją.
Krok 2. Wlać wodę do garnka i włożyć jajko do niej.
Krok 3. Gotować jajko przez 8 min.
Krok 4. Gorącą wodę wylać i wlać zimną wodę do garnka, by ostudzić jajka.
Krok 5 Zakończ algorytm.
Zadanie 3
Pracownik pewnej firmy (na dzień pierwszy stycznia danego roku) otrzymuje miesięczne wynagrodzenie w wysokości k złotych. Dodatkowo co dwa miesiące uzyskuje premię w wysokości 10% miesięcznej płacy podstawowej. Wynagrodzenie zasadnicze wzrasta co trzy miesiące o 5%. Jaką płacę pracownik uzyska pracownik po sześciu miesiącach i po roku? Podaj specyfikację i opisz sposób (czyli podaj algorytm w formie opisowej) obliczenia wynagrodzenia pracownika.
Specyfikacja
Wejście: Liczba rzeczywista dodatnia k- miesięczne wynagrodzenie zasadnicze
Wyjście: Liczby rzeczywiste dodatnie: W1- wysokość wynagrodzenia po 6 miesiącach, W2- wysokość wynagrodzenia po rokuOpis słowny
Wczytanie danej wejsciowej k.
Przypisać W1 = 1,21275 * k i wyprowadzić wynik W1.
- 1 miesiąc- k
- 2 miesiąc- 1,1 * k
- 3 miesiąc- 1,05 * k
- 4 miesiąc- 1,1 * 1,05 * k
- 5 miesiąc- 1,05 * k
- 6 miesiąc- 1,1 * 1,05 * 1,05 * k
- 7 miesiąc- 1,05 * 1,05 * k
- 8 miesiąc- 1,1 * 1,05 * 1,05 * k
- 9 miesiąc- 1,05 * 1,05 * 1,05 * k
- 10 miesiąc- 1,1 * 1,05 * 1,05 * 1,05 * k
- 11 miesiąc- 1,05 * 1,05 * 1,05 * k
- 12 miesiąc- 1,1 * 1,05 * 1,05 * 1,05 * 1,05 * k
Przypisać W2 = 1,337056875 * k i wyprowadzić wynik W2.
Zadanie 4
Podaj specyfikację zadania i skonstruuj algorytm w postaci listy kroków obliczania ile litrów wody spada na plac o powierzchni P m2, jeśli pokryła go warstwa wody h mm.
Specyfikacja
Wejście: Liczby rzeczywiste dodatnie P [m2] i h [mm]
Wyjście: Liczba rzeczywista dodatnia L- określająca ilość wody w litrachLista kroków
Krok 0. Wczytaj wartości danych P [m2] i h [mm]
Krok 1. Przypisz P [m2]= 100 P [dm2]
Krok 2. Przypisz h [mm] = 0,01 h [dm]
Krok 3. Przypisz L = P * d
Krok 4 Wypisz wynik L i zakończ algorytm.
Zadanie 5
Podaj specyfikację zadania i skonstruuj algorytm rozwiązujący równanie liniowe ax+b=0
Specyfikacja
Wejście: Dowolne liczby rzeczywiste: a, b
Wyjście: Wartość rzeczywista pierwiastka równania liniowego:x lub komunikat informujący o braku rozwiązania bądź uzyskaniu nieskończenie wielu rozwiązań.
Rozwiązania
- Opis słowny
Opis słowny polega na podaniu czynności, które należy podjąć, by uzyskać oczekiwany efekt. Musi być zrozumiały dla odbiorcy.
- Lista kroków
Lista kroków algorytmu to uporządkowany opis wszelkich czynności, jakie mają być wykonane w ramach algorytmu. Na liście kroków nie ma obowiązku umieszczania kroku 0., który zawiera wczytanie danych wejściowych niezbędnych do realizacji algorytmu. Ta informacja zawarta jest już w specyfikacji algorytmu.
- Pseudokod
Pseudokod to uproszczona wersja typowego języka programowania.
- Schemat blokowy
Schemat blokowy to narzędzie służące do przedstawienia kolejnych czynności w projektowanym algorytmie. Jest to diagram, na którym procedura, system lub program komputerowy są reprezentowane przez opisane figury geometryczne połączone wektorami zgodnie z kolejnością wykonywania czynności wynikających z przyjętego algorytmu rozwiązania zadania.
- Program w języku programowania
-
Zbiór zasad określających, kiedy ciąg symboli tworzy program komputerowy oraz jakie obliczenia opisuje.
- Drzewo algorytmu
-
Drzewo jest strukturą danych zbudowaną z elementów, które nazywamy węzłami. Dane przechowuje się w węzłach drzewa. Węzły są ze sobą powiązane w sposób hierarchiczny za pomocą krawędzi, które zwykle przedstawia się za pomocą strzałki określającej hierarchię.
- © Untitled
- Design: HTML5 UP
Po wczytaniu danych wejściowych sprawdzić czy a=0. Jeśli a≠0 to oblicz "x= -b / a" i wyprowadź wynik "x", a jeśli a=0 to sprawdzić czy b=0. Jeśli b=0 to wyprowadzić komunikat "nieskończenie wiele rozwiązań", w przeciwnym wypadku wyprowadzić komunikat "równanie sprzeczne".
Krok 0. Wczytaj wartości danych a i b
Krok 1. Jeśli a≠0, to oblicz "x= -b / a", wypisz wynik "x" i zakończ algorytm
Krok 2. (W tym przypadku a=0) Jeśli b=0, wypisz komunikat "nieskończenie wiele rozwiązań", w przeciwnym wypadku wypisz komunikat "równanie sprzeczne". Zakończ algorytm
Start
Wczytaj (a,b)
Jeżeli a≠0
To wykonaj "x:= -b / a" i wypisz "x"W przeciwnym wypadku jeżeli b=0To wypisz komunikat "nieskończenie wiele rozwiązań"W przeciwnym wypadku wypisz komunikat "równanie sprzeczne"
Stop
Program w języku C++
#include <iostream> using namespace std; main() { double a, b, x; cout<<"podaj a, b"<<endl; cin>>a>>b; if (a!=0) {x=-b/a; cout<<"x = "<<x<<endl;} else if (b==0) cout<<"nieskończenie wiele rozwiązań"<<endl; else cout<<"równanie sprzeczne"<<endl; return 0; }
Program w języku Pascal
program rownanie_liniowe var a, b, x: real begin writeln('podaj a, b:'); readln(a,b); if a<>0 then begin x:=-b/a; writeln('x = ',x) end else if b=0 then writeln('nieskończenie wiele rozwiązań') else writeln('równanie sprzeczne') end.
Darmowy hosting zapewnia PRV.PL