Tablice są typem pochodnym. Poniżej mamy przykłady deklaracji różnych tablic:

Podobne dokumenty
Tablice są typem pochodnym. Poniżej mamy przykłady deklaracji różnych tablic:

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci:

Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119

Podstawy algorytmiki i programowania - wykład 1 Tablice powtórzenie Tablice znaków Tablice dwuwymiarowe

do instrukcja while (wyrażenie);

Zadeklarowanie tablicy przypomina analogiczną operację dla zwykłych (skalarnych) zmiennych. Może zatem wyglądać na przykład tak:

Podstawy algorytmiki i programowania - wykład 2 Tablice dwuwymiarowe cd Funkcje rekurencyjne

Wymiar musi być wyrażeniem stałym typu całkowitego, tzn. takim, które może obliczyć kompilator. Przykłady:

Podstawy Programowania Podstawowa składnia języka C++

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 5

Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

Inicjacja tablicy jednowymiarowej

Informacje wstępne #include <nazwa> - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char

1,3,4,2,3,4,0,1,4,5,0. Wówczas największa suma trzech kolejnych liczb (zaznaczone na czerwono) wynosi:

Struktury Struktura polami struct struct struct struct

tablica: dane_liczbowe

1 Podstawy c++ w pigułce.

Część 4 życie programu

MACIERZE. Sobiesiak Łukasz Wilczyńska Małgorzata

Podstawy Programowania C++

C++ wprowadzanie zmiennych

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk

3. Instrukcje warunkowe

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

Proste programy w C++ zadania

Programowanie - wykład 4

Rozwiązanie. #include <cstdlib> #include <iostream> using namespace std;

Funkcje. Deklaracja funkcji. Definicja funkcji. Wykorzystanie funkcji w programie.

> C++ dynamiczna alokacja/rezerwacja/przydział pamięci. Dane: Iwona Polak. Uniwersytet Śląski Instytut Informatyki

Algorytmika i programowanie. Wykład 2 inż. Barbara Fryc Wyższa Szkoła Informatyki i Zarządzania w Rzeszowie

Programowanie strukturalne i obiektowe. Funkcje

4. Funkcje. Przykłady

PDF stworzony przez wersję demonstracyjną pdffactory Pro Program 15

Podstawy programowania. Wykład: 6. Tablice statyczne. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Rekurencja (rekursja)

1 Wskaźniki. 1.1 Główne zastosowania wskaźników

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Zmienne i struktury dynamiczne

Zadania język C++ Zad. 1. Napisz program wczytujący z klawiatury wiek dwóch studentów i wypisujący informację o tym, który z nich jest starszy.

Podstawy algorytmiki i programowania - wykład 4 C-struktury

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40

LISTA 5. C++ PETLE for, while, do while

typ y y p y z łoż o on o e n - tab a lice c e w iel e owym m ar a o r we, e stru r kt k ury

PROGRAMOWANIE W C++ ZADANIA

W języku C/C++ pomiędzy wskaźnikami a tablicami istnieje bardzo ścisły związek. Do onumerowania elementów w tablicy służą tzw. INDEKSY.

Programowanie komputerowe. Zajęcia 1

C-struktury wykład. Dorota Pylak

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27

1 Podstawy c++ w pigułce.

Wstęp do programowania

C-struktury wykład. Dorota Pylak

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej

1. Napisz program wypisujący w kolejnych wierszach standardowego wyjścia pojedyncze słowa następującego napisu Bardzo dlugi napis. 2.

Język C, tablice i funkcje (laboratorium)

Wstęp do Informatyki

I. Podstawy języka C powtórka

7. Pętle for. Przykłady

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady

2. Zmienne i stałe. Przykłady Napisz program, który wypisze na ekran wynik dzielenia 281 i 117 w postaci liczby mieszanej (tj. 2 47/117).

void Pobierz(Student &a); void Wypisz(Student a); void Ustaw_zaliczenia(Student t[],int r); void Wypisz_najlepszych(Student t[],int r, float prog);

*W uproszczeniu: jest dziewięciu sędziów przyznających po dwie noty: za wartość techniczną i artystyczną (skala od 0.0 do 6.0)

Tablice. int rozmiar; cout << Jaki ma być rozmiar tabeli? ; cin >> rozmiar; { int tablica[rozmiar]; /* TU JEST ŹLE */... }

Pytania sprawdzające wiedzę z programowania C++

Podstawy informatyki I r.

Lab 9 Podstawy Programowania

TABLICE W JĘZYKU C/C++ typ_elementu nazwa_tablicy [wymiar_1][wymiar_2]... [wymiar_n] ;

Wstęp do programowania

Program 14. #include <iostream> #include <ctime> using namespace std;

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 5 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Programowanie obiektowe W3

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Programowanie i struktury danych

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

for (inicjacja_warunkow_poczatkowych; wyrazenie_warunkowe; wyrazenie_zwiekszajace) { blok instrukcji; }

for (inicjacja_warunkow_poczatkowych(końcowych); wyrazenie_warunkowe; wyrazenie_zwiekszajace(zmniejszające)) { blok instrukcji; }

Podstawy algorytmiki i programowania - wykład 5 C-struktury cd.

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe:

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami

Podstawy programowania skrót z wykładów:

Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++

lekcja 8a Gry komputerowe MasterMind

INFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki

4. Napisz program wyznaczający wartość funkcji. f (x) = x cos x + e 4x 7. w zadanym punkcie.

Tablice jednowymiarowe

Wstęp do informatyki- wykład 8 Pętla while, do while,for -pętla w pętli- przykłady Operator rzutowania Manipulatory

Język C, tablice i funkcje (laboratorium, EE1-DI)

Wykład II Tablice (wstęp) Przykłady algorytmów Wstęp do języka C/C++

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++

Wstęp do informatyki- wykład 6

I - Microsoft Visual Studio C++

Algorytmika i programowanie. dr inż. Barbara Fryc Wyższa Szkoła Informatyki i Zarządzania w Rzeszowie

Materiał Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Wskaźniki Tablice dynamiczne Referencje Funkcje

utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy,

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

1 P roste e t ypy p d a d n a ych c - c ąg ą g d a d l a szy 2 T y T py p z ł z o ł żo ż ne e d a d n a ych c : T BLICE

Podstawy informatyki. Elektrotechnika I rok. Język C++ Operacje na danych - wskaźniki Instrukcja do ćwiczenia

Zestaw 1-1 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.cpp)!!!

Transkrypt:

Tablice TEORIA Tablica to ciąg obiektów tego samego typu, które zajmują ciągły obszar w pamięci. Dzięki stosowaniu tablic, zamiast nazywania każdej z np. stu zmiennych osobno możemy zabudować tablicę 100-elementową, a następnie odnosić się do poszczególnych elementów tablicy. Dla przykładu następująca definicja: int tab[100]; rezerwuje w pamięci miejsce dla 100 elementów typu int. Rozmiar tak definiowanej tablicy musi być stałą znaną już w momencie kompilacji, ponieważ kompilator musi już wtedy wiedzieć ile miejsca ma zarezerwować na daną tablicę. Tablice są typem pochodnym. Poniżej mamy przykłady deklaracji różnych tablic: char slowo[80]; // slowo jest tablicą 80 elementów typu char float ulamek[15]; // ulamek jest tablicą 15 elementów typu float unsigned long liczba[789]; //liczba - tablica 789 elementów typu unsigned long Elementy tablicy Jeśli zdefiniujemy następującą tablicę: int tab[5]; to jest to tablica 5 elementów typu int a poszczególne elementy tej tablicy to: tab[0] tab[1] tab[2] tab[3] tab[4] Zauważ, że numeracja elementów tablicy zaczyna się od zera. Jeżeli o tym zapomnimy i będziemy chcieli wpisać coś do nieistniejącego elementu tab[5] to kompilator nie zasygnalizuje błędu, natomiast może to powodować nieprzewidziane skutki, w szczególności zmianę wartości innych zmiennych. W niektórych przypadkach (zależnie od implementacji i ustawień kompilatora) zostanie zniszczone w obszarze pamięci coś co następuje bezpośrednio za tablicą, jako ze przy powyższej definicji tablicy element tab[5] nie istnieje. Np. jeśli mamy następujące definicje zmiennych: int tab[5]; int r; to podczas próby zapisu czegoś do nieistniejącego elementu tab[5], np. tab[5]=5; zostanie zniszczona treść zmiennej r, jako że została ona umieszczona w pamięci bezpośrednio po tablicy tab.

Przypisywanie wartości poszczególnym elementom tablicy W wyniku wykonania następującego fragmentu programu int t[4]; for (int i=0; i<4; i++) t[i]=2*i; poszczególnym elementom tablicy t zostaną przypisane następujące wartości: t[0]=0 t[1]=2 t[2]=4 t[3]=6 Oczywiście nie musimy przypisywać wartości wszystkim elementom tablicy. Np. dla zdefiniowanej tablicy jak powyżej, instrukcja for (int i=0; i<2; i++) t[i]=2*i; przypisze wartości tylko dwóm pierwszym elementom tablicy, tzn. t[0]=0 przypadku instrukcji t[1]=2, natomiast w for (int i=0; i<5; i++) t[i]=2*i; nastąpi wpisanie ostatniej wartości (dla i=4) do elementu następującego w pamięci bezpośrednio po tablicy, jako że element t[4] przy tak zdefiniowanej tablicy nie istnieje. Podobnie w przypadku wyświetlania elementów tablicy, jeśli wyświetlamy istniejące elementy, to zostaną wyświetlone wartości poszczególnych elementów tablicy. Np. w wyniku wykonania fragmentu programu: int t[4]; for (int i=0; i<4; i++) t[i]=2*i; for (int i=0; i<4; i++) cout << t[i] << ; na ekranie monitora pojawia się wartości: 0 2 4 6 Gdybyśmy teraz zmodyfikowali ostatnią instrukcję na następującą: for (int i=0; i<5; i++) cout << t[i] << ; to spowoduje to próbę wypisania na ekranie również piątego nieistniejącego elementu tablicy t[4], czyli nastąpi pobranie wartości z obszaru pamięci bezpośrednio za tablicą i wyświetlenie dość bezsensownej (przypadkowej z naszego punktu widzenia) wartości.

Inicjalizacja tablic (nadanie wartości początkowych w momencie definicji tablicy) Podobnie jak w przypadku inicjalizacji zmiennych zwykłych typów, np. int k=4; float zm=0.34; możemy nadawać wartości początkowe również tablicom, z tą różnicą, że tutaj trzeba nadać wartość każdemu elementowi tablicy. Będzie to wyglądało np. następująco: int t[6]={3,6,12,14,56,1; W wyniku takiej inicjalizacji poszczególne elementy naszej tablicy mają teraz następujące wartości: t[0]=3 t[1]=6 t[2]=12 t[3]=14 t[4]=56 t[5]=1 UWAGA: Jeśli nie podamy rozmiaru tablicy, to kompilator przeliczy ilość inicjalizatorów i zarezerwuje odpowiednią ilość miejsca. Powyższy przypadek jest zatem równoważny inicjalizacji: int t[]={3,6,12,14,56,1; Tablice znakowe Teksty w tablicach znakowych zazwyczaj przechowujemy tak, że po ciągu liter następuje znak o kodzie ASCII równym zero, czyli tzw. znak NULL. Znak ten jest po to by zaznaczyć gdzie kończy się ciąg liter. Na tak zakończony ciąg znaków mówimy string. Zdefiniujmy sobie teraz tablicę znakową o 40 elementach i zainicjalizujmy stringiem uwaga. Będzie to wyglądało następująco: char t[40]={ uwaga ; // zwróć uwagę na cudzysłów W wyniku powyższej inicjalizacji poszczególne elementy tablicy mają wartości: t[0]= u t[1]= w t[2]= a t[3]= g t[4]= a t[5]=null Dalsze elementy tablicy nas obecnie nie interesują. Jest też inny sposób inicjalizacji tablicy znaków: char t[40]={ u, w, a, g, a ; W powyższym zapisie nie ma cudzysłowu, więc kompilator nie dokończy tego znakiem NULL, czyli nie ma znaku kończącego string. Początkowych 5 elementów tablicy ma natomiast taką samą wartość jak w poprzednim przypadku. Różnica pojawi się w sytuacji, gdy nie podamy rozmiaru tablicy. W pierwszym przypadku char t[]={ uwaga ; tablica jest 6- elementowa, natomiast w przypadku char t[]={ u, w, a, g, a ; będziemy mieli zarezerwowane miejsce na jedynie 5 elementów tablicy.

Tablice wielowymiarowe Elementami tablic mogą być w szczególności także inne tablice. Jeśli elementem tablicy jest inna tablica jednowymiarowa, mamy do czynienia z tablicą dwuwymiarową. Taką tablicę możemy zadeklarować następująco: int t[3][2]; //t jest tablicą 3-elementową, której elementami są dwuelementowe tablice typu int Elementy naszej tablicy to: t[0][0] t[0][1] t[1][0] t[1][1] t[2][0] t[2][1] Poszczególne elementy takiej tablicy są umieszczane kolejno w pamięci komputera tak, ze najszybciej zmienia się najbardziej skrajny prawy indeks, zatem poniższa inicjalizacja: int t[3][2]={1,2,3,4,5,6; spowoduje następujące nadanie wartości elementom tablicy: t[0][0]=1 t[1][0]=3 t[2][0]=5 t[0][1]=2 t[1][1]=4 t[2][1]=6 Często o takiej dwuwymiarowej tablicy myślimy jak o macierzy, która w naszym przypadku miałaby 3 wiersze i 2 kolumny. Poniżej fragment programu nadającego poszczególnym elementom tablicy wartość będącą sumą numeru jej wiersza i kolumny i wyświetlający te wartości w postaci macierzy: int t[3][2]; int i,j; for (i=0; i<3; i++) for (j=0; j<2; j++) t[i][j]=i+j; //wyświetlenie for (i=0; i<3; i++) {for (j=0; j<2; j++) cout<<t[i][j]<< ; cout << endl; TABLICE ZADANIA Wczytywanie i drukowanie. Dostęp do elementów tablicy. 1. Napisz program wczytujący z klawiatury 10 liczb całkowitych. Wczytane liczby należy wydrukować na ekranie. 2. Napisz program wczytujący z klawiatury 10 liczb całkowitych. Wczytane liczby należy wydrukować na ekranie w odwrotnej kolejności. 3. Napisz program wczytujący z klawiatury n liczb całkowitych. Liczbę n należy pobrać z klawiatury. Jeśli wartość n podana przez użytkownika jest liczbą z zakresu od 1 do 30, wówczas program ma wczytać podaną ilość liczb całkowitych, a następnie wczytane liczby wydrukować na ekranie. Jeśli natomiast podana wartość n jest liczbą spoza przedziału [1;30], wówczas program kończy pracę drukując stosowny komunikat. W zadaniu należy wykorzystać 30-elementową tablicę liczb całkowitych. 4. Napisz program, który wczytuje do jednowymiarowej tablicy (o rozmiarze nmax=100) n<= nmax liczb (liczbę n podaje na początku użytkownik), a następnie wyświetla te elementy.

#include<iostream> using namespace std; int main() { const int nmax=100;//ilosc el. tablicy float tab[nmax];//deklaracja statycznej nmax-el. tablicy int n;//ilosc wykorzystywanych elementow tablicy //pobranie ilosci elementow tablicy (1 <= n <= nmax)-petla zaporowa do { cout<<"podaj dlugosc tablicy \n"; cin>>n; if (n<=0 n>nmax) cout<<"podana liczba jest spoza zakresu podaj jeszcze raz "; while (n<=0 n>nmax); //pobranie elementow for (int i=0; i<n; i++) { cout<<"podaj "<<i<<" element tablicy "; cin>>tab[i]; //wyświetlenie el.tablicy for(int i=0; i<n; i++) cout<< tab[i]<<endl; system( pause ); return 0; Wyszukiwanie w tablicy Napisz program, który wczytuje do jednowymiarowej tablicy (o rozmiarze nmax=100) n<= nmax liczb (liczbę n podaje na początku użytkownik), a następnie 5. prosi użytkownika o podanie jakiejś liczby i sprawdza, ile razy występuje ona we wczytanej tablicy. 6. prosi użytkownika o podanie jakiejś liczby i sprawdza, czy występuje ona we wczytanej tablicy. Jeżeli tak, program powinien wyświetlić napis,,jest'' i numer pierwszej pozycji na której wystąpiła ta liczba, a jeśli nie, wyświetlić napis,,nie MA''. 7. sprawdza czy występuje zero i na której pozycji pierwszy raz 8. program ma znaleźć największą spośród podanych liczb i wydrukować ją na ekranie. 9. program ma znaleźć najmniejszą spośród podanych liczb i wydrukować ją na ekranie. 10. program ma znaleźć największą spośród podanych liczb oraz wydrukować na ekranie informację mówiącą o tym, ile razy największa liczba wystąpiła w podanym ciągu liczb. 11. program ma znaleźć najmniejszą spośród podanych liczb oraz wydrukować na ekranie informację mówiącą o tym, ile razy najmniejsza liczba wystąpiła w podanym ciągu liczb. 12. program ma znaleźć drugi co do wielkości wyraz podanego ciągu liczb (czyli liczbę mniejszą od największej liczby występującej w ciągu, ale większą od wszystkich pozostałych). 13. program ma znaleźć drugi co do wielkości (ciut większy od najmniejszego) wyraz podanego ciągu liczb (czyli liczbę większą od najmniejszej ale mniejszą od każdej innej). 14. oblicza ile razy w podanym ciągu liczb wystąpił drugi co do wielkości największy element ciągu? 15. oblicza ile razy w podanym ciągu liczb wystąpił drugi co do wielkości najmniejszy element ciągu? 16. wypisuje na ekranie te liczby, które są mniejsze od średniej arytmetycznej wszystkich liczb w tablicy. 17. podaje ilość miejsc w których element mniejszy następuje po większym, np. dla tablicy [4,7,5,5,2,6,8,7] program powinien podać 3, a dla tablicy [2,2,4,6,7,9] powinien podać 0 18. sprawdza, czy wczytany ciąg jest posortowany (nierosnący lub niemalejący).

Przetwarzanie elementów tablicy Napisz program wczytujący ciąg liczb rzeczywistych. 19. Każdą podana liczbę należy podnieść do kwadratu, a następnie wydrukować na ekranie. 20. Każdą podana liczbę należy podnieść do trzeciej potęgi, a następnie wydrukować na ekranie. 21. Do każdej podanej liczby należy dodać jeden. Tak otrzymane liczby należy wydrukować na ekranie. 22. Każdą podaną liczbę należy pomnożyć przez dwa. Tak otrzymane liczby należy wydrukować na ekranie. 23. Liczby ujemne należy zastąpić zerami. Tak otrzymane liczby drukujemy na ekranie. Napisz program wczytujący ciąg liczb całkowitych. 24. Wydrukuj na ekranie kolejno wszystkie parzyste spośród podanych liczb. 25. Dodaje 10 do tych które są parzyste. 26. Wydrukuj na ekranie kolejno wszystkie nieparzyste spośród podanych liczb. 27. Wydrukuj na ekranie kolejno wszystkie liczby, które dzielą się przez 3. 28. Wydrukuj na ekranie kolejno wszystkie liczby, które należą do przedziału [4;15). 29. Wydrukuj na ekranie kolejno wszystkie liczby, które mają wszystkie cyfry parzyste. 30. Wydrukuj na ekranie kolejno wszystkie liczby, których suma cyfr wynosi 1. 31. Do liczb parzystych należy dodać 100, a następnie wydrukować wszystkie liczby na ekranie. Przetwarzanie elementów tablicy o zadanych indeksach 32. Napisz program wczytujący ciąg liczb rzeczywistych. Wydrukuj na ekranie te spośród liczb, których indeks jest liczbą parzystą. 33. Napisz program wczytujący ciąg liczb rzeczywistych. Wydrukuj na ekranie te spośród liczb, których indeks jest liczbą będącą kwadratem liczby całkowitej (1, 4, 9, 16 itd.). Różne 34. Napisz program generujący ciąg liczb pierwszych od 0 do n metoda sita Eratostanesa. 35. Napisz program generujący ciąg n początkowych liczb Fibonacciego. 36. Napisz program sortujący wczytane n liczb metodą wyszukiwania kolejnych minimów. 37. Napisz program wypełniający tablicę n liczb t[0]... t[n-1] wartościami: a) od 0 do n-1 b) od 7 do n+6 c) ciągiem 4, 8, 12, 16,... d) ciągiem 1, 2, 4, 8, 16,... e) 2,3,4,...,n+1 Wielomiany Wielomian n-tego stopnia postaci f(x)=a n x n +a n-1 x n-1 +...+a 1 x+a 0 możemy reprezentować za pomocą tablicy jego współczynników a 0,a 1,...,a n. Napisz program, który 38. wczytuje stopień wielomianu (nie większy niż 50) i jego współczynniki a następnie oblicza wartość wielomianu w podanym z klawiatury punkcie x korzystając ze schematu Hornera. 39. wyczytuje stopnie (nie większe niż 50) i współczynniki dwóch wielomianów a następnie wyświetla stopień i współczynniki wielomianu będącego ich sumą. 40. wczytuje stopnie (nie większe niż 50) i współczynniki dwóch wielomianów a następnie wyświetla stopień i współczynniki wielomianu będącego ich iloczynem. Wektory 41. Napisz program, który wczytuje z klawiatury wektor i następnie oblicza jego długość. 42. Wektory A=[a 1,a 2,...,a n ], B=[b 1,b 2,...,b n ] są współliniowe, gdy istnieje taka liczba rzeczywista t, że b i =t*a i dla każdego 1<=i<=n. Napisz program, który wczytuje

dwa wektory wymiaru n<=20 (podanego wcześniej z klawiatury) i sprawdza, czy są one współliniowe. 43. Napisz program, który wczytuje z klawiatury współrzędne dwóch n-wymiarowych wektorów (wymiaru co najwyżej nmax=20) a następnie oblicza, ich iloczyn skalarny. 44. Wczytaj z klawiatury współrzędne dwóch wektorów n-wymiarowych A, B (n<= 20) a następnie oblicz i wypisz wartość cosinusa kąta pomiędzy tymi wektorami daną wzorem cosα=<a,b>/( A * B ), gdzie <A,B> oznacza iloczyn skalarny wektorów, zaś A jest długością wektora A. Tablice wielowymiarowe Napisz program, który 1. wczytuje z klawiatury wymiary m,n (m,n<= 10) i elementy macierzy a następnie wypisuje ją na ekranie w ten sposób, by każdy wiersz macierzy znajdował się w osobnej linii a elementy w wierszu były wypisane na 5 miejscach. #include <iostream> #include <iomanip> using namespace std; int main() { const int nmax = 10;//rozmiar macierzy float a[nmax][nmax];//deklaracja macierzy nmax x nmax int n, m; //n-il.wierszy, m-il. kolumn //pobieranie il. wierszy do { cout << "Podaj il. wierszy\n n = "; cin >> n; while((n < 1) (n > nmax)); //pobieranie il. kolumn do { cout << "Wstaw il. kolumn\n m = "; cin >> m; while((m < 1) (m > nmax)); //pobieranie el. macierzy cout << "\npodaj elementy macierzy A\n"; for(int i=0; i < n; i++) for(int j=0; j < m; j++) { cout << "A["<< i+1 << ", " << j+1 << "] = "; cin >> a[i][j]; //wyswietlanie el. macierzy cout<<fixed<<setprecision(2);//el. wysw. z dokladn.do 2-ch miejsc po przecinku for(int i=0; i < n; i++) {//wyswietlamy el. i-tego wiersza for(int j=0; j < n; j++) cout << setw(5) << a[i][j]; cout << endl;//przechodzimy do nowego wiersza system("pause"); return 0; 2. wczytuje macierz (jej wymiary i elementy) a następnie oblicza sumę elementów macierzy. 3. wyznacza minimum w wierszach wczytanej z klawiatury tablicy dwuwymiarowej rozmiaru n x n (gdzie n<=10 było podane z klawiatury) 4. wprowadza liczby do dwuwymiarowej tablicy liczb o wymiarach n wierszy na m kolumn oraz oblicza: sumy elementów w wierszach i sumy elementów w kolumnach. Wyprowadza na ekran obliczone sumy z numerem wiersza i kolumny.

5. wczytuje macierz kwadratową a następnie liczy jej ślad, tzn. sumę elementów na głównej przekątnej. 6. wczytuje dwie macierze a potem, jeżeli jest to możliwe, dodaje je i wypisuje macierz będącą ich sumą. 7. wczytuje z klawiatury stopień n macierzy kwadratowej (n<= 10) a potem jej elementy, a następnie podaje numer tego wiersza macierzy w którym suma elementów w wierszu była najmniejsza. 8. wczytuje z klawiatury stopień n macierzy kwadratowej (n<= 10), potem jej elementy, a następnie podaje numer tej kolumny macierzy w której suma elementów w kolumnie była największa.