Warunkiem zaliczenia ćwiczeń laboratoryjnych jest:
- zaliczenie wszystkich zadań laboratoryjnych z programowania w Matlabie,
- zaliczenie na przedostatnich zajęciach sprawdzianu z samodzielnego pisania programów
w Matlabie (jest możliwość korzystania z funkcji help)
- opracowanie i zaliczenie na ostatnich zajęciach osobistej strony internetowej utworzonej
w języku HTML.
Oceny z poszczególnych zadań laboratoryjnych w Matlabie są wystawiane według
następujących zasad:
- ocena 5 – gdy zadanie jest zrealizowane i zaliczone na bieżących zajęciach,
- ocena 4 – gdy zadanie jest zrealizowane i zaliczone na drugich zajęciach,
- ocena 3 – gdy zadanie jest zrealizowane i zaliczone na trzecich zajęciach.
Ocena ze sprawdzianu (ocena_spr) obejmującego samodzielne pisanie programów
w Matlabie jest wystawiana według następujących zasad:
- ocena 5 – gdy napisano poprawnie działające trzy programy,
- ocena 4 – gdy napisano poprawnie działające dwa programy,
- ocena 3 – gdy napisano poprawnie działający jeden program.
Ocena za utworzenie osobistej strony internetowej w języku HTML (ocena_html) jest
wystawiana według następujących zasad:
- ocena 3 – gdy strona główna zawiera zarówno tekst oraz grafikę i jest możliwość
odwołania się do podstrony (która zawiera również tekst oraz grafikę) oraz
innej strony internetowej (link). Student ponadto powinien umieć zmienić
formatowanie tekstu oraz grafiki według poleceń prowadzącego, a także
umieć utworzyć kolejną podstronę.
- ocena 4 – wymagania jak dla oceny 3 ale strona i podstrony muszą mieć ładną
i dopracowaną szatę graficzną oraz ciekawy tekst,
- ocena 5 – wymagania jak dla oceny 4 ale strona i podstrony powinny posiadać
animacje.
Ocena z ćwiczeń laboratoryjnych jest średnią trzech ocen:
- ocena_lab - będącej średnią arytmetyczną z zadań laboratoryjnych z Matlaba,
- ocena_spr – będącej oceną ze sprawdzianu,
- ocena_html – będącej oceną z utworzenia strony internetowej,
według wzoru
ocena = (2 * ocena _ lab + 2 * ocena _ spr + ocena _ html) / 5
1
Temat: Wczytywanie z klawiatury i wyświetlanie na monitorze danych oraz operacje na
macierzach
Cel ćwiczenia: Zapoznać się ze środowiskiem Matlaba (tworzenie M-plików, zapisywanie
ich na dysku oraz uruchamianie) oraz sposobem jego działania w trybie interpretera
i skryptowym z wykorzystaniem operacji na macierzach.
Zadanie 1: Napisać skrypt (kod źródłowy programu) w pliku lab1_IN.m (IN – pierwsza litera
imienia i nazwiska) i zapisać go w katalogu Z:\Matlab, który będzie realizował
następujące polecenia (na ekranie monitora powinna być wyświetlana informacja, które
polecenie jest realizowane):
1. Utwórz dwie dowolne macierze A oraz B o wymiarze 3x3 i wykonaj wszystkie
działania macierzowe (bez dzielenia macierzowego) oraz tablicowe na tych
macierzach. Sprawdź czy działania zostały wykonane poprawnie.
2. Utwórz dwie dowolne macierze X oraz Y o wymiarze 2x3 i wykonaj wszystkie
działania macierzowe (bez dzielenia macierzowego) oraz tablicowe na tych
macierzach. Sprawdź czy działania zostały wykonane poprawnie, których z działań i
dlaczego nie można wykonać?
3. Utwórz na wszystkie znane Ci sposoby wektor W o 6 elementach, którego elementy są
kolejnymi naturalnymi liczbami nieparzystymi. Spraw, aby wytworzony wektor
zajmował jak najmniej miejsca w pamięci operacyjnej. Przemnóż wektor przez liczbę 3.
4. Sprawdź działanie funkcji size, length, max, min, sum, inv na wszystkich
utworzonych macierzach i wektorach (A, B, X, Y, W). Dlaczego przy funkcji inv
niekiedy jest informacja o błędzie?
5. Utwórz macierz Los o wymiarze 6x4, której elementy są liczbami pseudolosowymi o
rozkładzie normalnym (Gaussa). Wyświetlić wartości macierzy w formacie long.
6. Na podstawie macierzy Los utwórz wektor Los_2w, który składa się z elementów
drugiego wiersza macierzy Los oraz wektor Los_4k, który składa się z elementów
czwartej kolumny macierzy Los.
Zadanie 2: Napisać skrypt (kod źródłowy programu) który wyświetli na monitorze i pozwoli
wprowadzić z klawiatury poniższy tekst (wykorzystać funkcję input i disp).
Cześć to ja Twój komputer.
A jak ty masz na imię? Leszek
Cześć Leszek, ten program wykonuje działania na macierzach.
2
Temat: Wykorzystanie instrukcji warunkowej if-elseif-else-end
Cel ćwiczenia: zapoznać się z możliwością wykorzystania operatorów relacji oraz
operatorów logicznych przy konstruowaniu instrukcji warunkowej if-elseif-else-end.
Zad. 1. Napisać kod źródłowy programu, który będzie obliczał pierwiastki równania
kwadratowego. W programie wykorzystać zarówno prostą postać instrukcji if-else-end jak i
postać bardziej złożoną if-elseif-else-end !!!! .
Po uruchomieniu programu na ekranie monitora powinna wyświetlić się informacja do
czego program służy i postać równania kwadratowego
ax^2 + bx + c = 0.
Poniżej powinna być możliwość wczytania z klawiatury dowolnych wartości
współczynników równania kwadratowego: a, b oraz c (wykorzystać funkcję input i disp).
W wyniku działania programu na ekranie monitora powinna zostać wyświetlona
informacja: co to jest za równanie (którego współczynniki podaliśmy z klawiatury), ile
pierwiastków rzeczywistych ma równanie oraz ile one wynoszą (wykorzystać funkcję disp).
Powinna być również informacja, że wynik wyświetlony na monitorze jest zaokrąglony na
czwartym miejscu po przecinku (wykorzystać format short do wyświetlania zmiennych
liczbowych). Zadbać o przejrzystość zapisu na ekranie w oknie Command Window.
Uwaga.
Program powinien uwzględniać następujące przypadki:
- a=0, b=0, c=0 - równanie tożsamościowe,
- a=0, b=0, c≠0 - równanie sprzeczne,
- a=0, b≠0 - równanie liniowe (jeden pierwiastek),
- a≠0
- równanie kwadratowe (brak pierwiastków rzeczywistych, jeden
pierwiastek podwójny lub dwa pierwiastki rzeczywiste).
3
Temat: Wykorzystanie instrukcji wyboru switch-case-otherwise-end
Cel ćwiczenia: zapoznać się z możliwością wykorzystania operatorów relacji oraz
operatorów logicznych przy konstruowaniu instrukcji wyboru switch-case-
otherwise-end.
Zad. 1. Napisać kod źródłowy programu, który będzie prostym kalkulatorem wykonującym
dodawanie, odejmowanie, mnożenie, dzielenie i potęgowanie dwóch liczb wprowadzonych z
klawiatury.
Po uruchomieniu programu na ekranie monitora powinna wyświetlić się informacja do
czego program służy oraz jakie działania może wykonać. Po podaniu typu działania do
wykonania, powinna być możliwość wczytania z klawiatury dwóch dowolnych liczb a i b, na
których wybrane działanie ma być wykonane. W kodzie źródłowym do wyboru działania,
które ma być wykonane wykorzystać instrukcję switch-case-otherwise-end.
W wyniku działania programu na ekranie monitora powinna zostać wyświetlona czytelna
informacja, które działanie zostało wykonane i wynik tego działania zaokrąglony do dwóch
miejsc po przecinku.
Zad. 2. Wykorzystać instrukcje if-else-end do sterowania programem tak, aby:
-
w przypadku gdy wybrano zły znak działania - program poprosił o wybór działania do
wykonania jeszcze raz.
-
w przypadku dzielenia przez zero, pojawił się komunikat o braku możliwości
wykonania takiego działania.
4
Temat: Wykorzystanie instrukcji iteracyjnych (pętli) for-end oraz while-end
Cel ćwiczenia: zapoznać się z możliwością wykorzystania funkcji elementarnych do
ustalenia czy zmienna jest typu całkowitego oraz nauczyć się konstruowania i
wykorzystywania instrukcji iteracyjnych.
Zad. 1.
Napisać kod źródłowy programu, który będzie obliczał silnię dla zmiennej n
wprowadzonej z klawiatury, przy wykorzystaniu wszystkich poznanych na wykładzie
instrukcji iteracyjnych.
Po uruchomieniu programu na ekranie monitora powinna wyświetlić się informacja do
czego program służy z wykorzystaniem symbolu n!
Użytkownik podaje wartość liczby n z klawiatury.
Wynik obliczeń (wraz z opisem - przy zastosowaniu jakiej instrukcji iteracyjnej został
otrzymany) ma być wyświetlony na ekranie jeden pod drugim w elegancki sposób z
wykorzystaniem funkcji disp. Zadbać o przejrzystość zapisu na ekranie. Do obliczenia silni z
wykorzystaniem pętli for zastosować inną nazwę zmiennej niż do obliczeń silni z
wykorzystaniem pętli while.
Zad. 2.
Wykorzystując dowolną instrukcję iteracyjną lub warunkową rozbudować program z
zadania 1 tak, aby wprowadzanie zmiennej n odbywało się tak długo, aż będzie to liczba
naturalna, dla której można policzyć silnie.
5
Laboratorium nr 5 (2h)
Temat: Konstruowanie funkcji i wywoływanie ich w programie głównym
Cel ćwiczenia: nauczyć konstruowania funkcji o jednym i wielu parametrach wyjściowych
oraz wywoływania ich w programie głównym z parametrami aktualnymi. Zapoznać
się z możliwością wcześniejszego zakończenia działania funkcji poprzez
wykorzystanie instrukcji return.
Zad 1. Napisać kod źródłowy funkcji, która oblicza wartość następującego wielomianu:
2
y = 5 x + 3 x − 2.5
i wykorzystać ją do obliczenia w programie głównym następujących wyrażeń:
1
z = abs(5 y −10)
2
z 2 = 3 + ( y −1) /(2 y +1)
W wyniku działania programu na ekranie monitora powinna zostać wyświetlona
czytelna informacja, ile wynosi zmienna z1 oraz zmienna z2 dla x=5.
Zad 2. Napisać kod źródłowy funkcji, która oblicza pole i obwód koła o promieniu r, a
następnie wykorzystać ją w programie głównym do obliczenia ile należy dokupić siatki, aby
ogrodzić działkę w kształcie koła o promieniu 100 m, jeśli posiadamy 200 m siatki.
W wyniku działania programu na ekranie monitora powinna zostać wyświetlona
czytelna informacja, ile metrów siatki należy dokupić oraz ile wynosi pole działki.
Zabezpieczyć działanie programu w przypadku, gdyby w programie głównym
wywołano funkcje dla r<0.
Zad 3. Napisać kod źródłowy funkcji do obliczania silni i wykorzystać ją w programie
Kalkulator (laboratorium nr 3) jako kolejne możliwe działanie do wykonania.
6
Laboratorium nr 6 (2h)
Temat: Operacje na plikach dyskowych
Cel ćwiczenia: nauczyć wczytywania danych do programu głównego z plików na dysku
twardym oraz zapisywania wyników obliczeń w plikach na dysku twardym (w postaci
binarnej oraz w postaci znaków ASCII.
Napisać program w którym wprowadzamy z klawiatury (korzystając z instrukcji for),
dziesięć liczb (liczby powinny stanowić elementy wektora) oraz liczbę a≠0. Następnie
wykonać poniższe zadania.
Zad. 1. Zapisać wszystkie zmienne do pliku binarnego dane.mat, następnie wykonać
instrukcję clear all i spróbować wyświetlić na monitorze wartość dowolnej
używanej w programie zmiennej. Spowodować, aby ponownie w pamięci komputera
były wykorzystywane wcześniej zmienne.
Zad. 2. Utworzony wektor pomnożony przez liczbę „a” zapisać w pliku dyskowym
dane1.txt w jednym wierszu w postaci znaków ASCII. Następnie odczytać wartości
z pliku dane1.txt i wypisać na ekranie w jednym wierszu.
Zad. 3. Utworzony wektor pomnożony przez liczbę „a” zapisać w pliku dyskowym
dane2.txt w jednej kolumnie w postaci znaków ASCII. Następnie odczytać wartości
z pliku dane2.txt i wypisać na ekranie w jednej kolumnie.
Zad. 4. Utworzony wektor pomnożony przez liczbę „a” zapisać w pliku dyskowym
dane3.txt w dwóch kolumnach w postaci znaków ASCII. Następnie odczytać
wartości z pliku dane3.txt i wypisać na ekranie w dwóch kolumnach.
7
Temat: Tworzenie wykresów dwuwymiarowych
Cel ćwiczenia: nauczyć tworzenia wykresów dwuwymiarowych oraz ich formatowania
(opisu osi współrzędnych, umieszczania tytułu, legendy, opisu linii / punktów,
włączania siatki). Zapoznać z możliwością dodawania wykresu funkcji do wykresu
(wykresów) wcześniej utworzonego oraz tworzenia kilku wykresów w jednym oknie
graficznym.
Zad. 1. Napisać program, który będzie rysował wykres wybranej funkcji: sin(x), cos(x), tg(x)
lub ctg(x).
Po uruchomieniu programu na ekranie monitora powinna wyświetlić się informacja do
czego służy program oraz jakie operacje może wykonać. Po wybraniu funkcji, powinna być
możliwość wprowadzenia z klawiatury początku a i końca b przedziału, w którym ma być narysowany wykres. Do wyboru funkcji wykorzystać instrukcję switch-case-otherwise-end.
Zad. 2. Napisać kod programu, który wyświetli w oknie graficznym na jednym rysunku
wykresy dwóch funkcji: y = sin(x) i y = cos(x).
Następnie napisać kod programu, który:
- wyświetli w oknie graficznym wykres funkcji y = sin(x) w kolorze czerwonym
- pozwoli wprowadzić z klawiatury stałą 0< A<=10
- wyświetli na tym samym rysunku (na którym jest wcześniejszy wykres) wykres
funkcji y = A⋅sin(x) w kolorze niebieskim.
Wykresy funkcji wykonać w przedziale x = <0..2π>.
Zad. 3. Napisać kod programu, który wyświetli wykresy funkcji:
- sin(x) w przedziale x = <0..2π>
- cos(x) w przedziale x = <0..2π>
- tg(x) w przedziale x = <-0,45π..0,45π>
- ctg(x) w przedziale x = <0,05π..0,95π>
na czterech rysunkach w jednym oknie.
Uwaga do wszystkich zadań: zadbać o opis wykresów na rysunkach
8
Laboratorium nr 8 (2h)
Temat: Samodzielne pisanie prostych programów w Matlabie – sprawdzian
Laboratorium nr 9 (2h)
Temat: Wykorzystanie języka HTML do tworzenia stron internetowych
Cel ćwiczenia: nauczyć tworzenia prostych stron internetowych zawierających sformatowany
tekst, grafikę oraz odwołania do podstron oraz linki do innych stron internetowych.
Zad 1. Utworzyć w języku HTML osobistą stronę internetową
Ocena za ćwiczenie jest wystawiana według następujących zasad:
- ocena 3 – gdy strona główna zawiera zarówno tekst oraz grafikę i jest możliwość
odwołania się do podstrony (która zawiera również tekst oraz grafikę) oraz
innej strony internetowej (link). Student ponadto powinien umieć zmienić
formatowanie tekstu oraz grafiki według poleceń prowadzącego, a także
umieć utworzyć kolejną podstronę.
- ocena 4 – wymagania jak dla oceny 3 ale strona i podstrony muszą mieć ładną
i dopracowaną szatę graficzną oraz ciekawy tekst,
- ocena 5 – wymagania jak dla oceny 4 ale strona i podstrony powinny posiadać
animacje.
9