Algorytmika i Programowanie.
Podstawy języka C++ ze wstępem do programowania dla
in\ynierów
Tematyka ćwiczeń laboratoryjnych AiP_Lab09
dla 2 semestru studiów dziennych
na Wydziale In\ynierii LÄ…dowej PW
ProwadzÄ…cy SÅ‚awomir Czarnecki
tablice, funkcje c.d.
Zad.1. Zdefiniuj dwie stałe zmienne m, n typu int, inicjalizując je wartościami
odpowiednio m = 4 i n = 3. Zdefiniuj macierz M[m][n] o składowych typu
double, inicjalizując jednocześnie jej składowe następująco:
1 2 3
îÅ‚ Å‚Å‚
ïÅ‚ śł
4 5 6
ïÅ‚ śł
.
ïÅ‚ 7 8 9 śł
ïÅ‚10 11 12śł
ðÅ‚ ûÅ‚
InicjalizacjÄ™ przeprowadz na dwa sposoby:
" w momencie definicji u\ywajÄ…c tzw. inicjalizacji zbiorczej stosujÄ…cej
nawiasy klamrowe {...}
" po definicji tablicy, u\ywając podwójnej pętli for.
Wyświetl na ekranie wszystkie jej składowe u\ywając podwójnej pętli for.
Zad.2. Zdefiniuj funkcjÄ™
void DrukujMacierz(double** a, int w, int k),
która po wywołaniu w programie wyświetlać będzie na ekranie macierz a[w][k]
typu double o wymiarach: w × k i wywoÅ‚aj jÄ… dla utworzonej w Zad.1. macierzy
M[m][n] (proszÄ™ koniecznie przeczytać, zawarty na slajdach 41÷44 wykÅ‚adu
AiP_wyklad03.pdf, fragment dotyczÄ…cy mo\liwej i sugerowanej implementacji
zad.2.). Podobnie napisz funkcjÄ™
void DrukujWektor (double* a, int k),
wyświetlającą na ekranie składowe wektora a[k] o wymiarze k.
Zad.3. Zdefiniuj funkcjÄ™
long losowa (long a,long b),
która zwraca liczbę pseudolosową typu long z przedziału domkniętego [a , b] i
wywołaj ją w programie dla dowolnych stałych low, high typu long u\ytych
jako parametry a i b.
Zad.4. Dla stałych m i n z Zad.1. zdefiniuj tablicę K[m][n] oraz dwa wektory
q[n] i Q[m] typu double. Składowe tablicy K[...][...] i wektora q[...] zainicjalizuj
całkowitymi liczbami typu int w sposób losowy, a wektor Q[...] zainicjalizuj
zerami.
Zdefiniuj funkcjÄ™ mno\enia macierzy przez wektor
void mnozenie(double** a, double* b, double* c, int w, int k),
obliczajÄ…cej iloczyn macierzy przez wektor c[w] = a[w][k] * b[k].
Wywołaj funkcję mnozenie(K,q,Q,m,n) wyświetlając na ekranie wartości
składowych macierzy K[...][...] i wektorów q[...] oraz Q[...].
Zad.5. Dla stałych m i n z Zad.1. oraz dla dodatkowej stałej p = 2, zdefiniuj
dwie tablice: T[n][p] oraz KT[n][p] typu double. Składowe tablicy T[...][...]
zainicjalizuj całkowitymi liczbami typu int w sposób losowy, a tablicę
KT[...][...] zainicjalizuj zerami.
Zdefiniuj funkcjÄ™ mno\enia macierzy przez macierz
void mnozenie(double** a, double** b, double** c, int m, int n, int k),
umo\liwiajÄ…cej obliczanie iloczynu macierzy c[m][p] = a[m][n] * b[n][p].
Wywołaj funkcję mnozenie(K,T,KT,m,n,p) wyświetlając na ekranie wartości
składowych macierzy K[...][...] , T[...][...] i KT[...][...].
Wyszukiwarka
Podobne podstrony:
lab09 PID 14 (1)Lab09 Queuing DisciplinesLab09AiP Lab02AiP Lab06BO Lab09AiP wyklad03AiP Lab05AiP Lab10Sprawozdanie AIPAiP Samorzad i polityka lokalna Gulczynskajava lab09 exceptionAiP Lab08AiP wyklad01AiP wyklad05so lab09AiP Lab04lab09 08więcej podobnych podstron