Sprawozdaniem z tego laboratorium będą kody źródłowe programów, które na nich opracujesz.
...
...
@@ -22,46 +22,47 @@ Pamiętaj, aby każdy program umieścić w osobnym pliku. Unikniesz w ten sposó
## Program 1: sortowanie bąbelkowe
Sortowanie bąbelkowe to najprostszy algorytm sortowania. Oczywiście, nie jest on stosowany w praktyce - posortowanie
nim X elementów wymaga X-kwadrat operacji.
nim X elementów wymaga X-kwadrat operacji.
Polega ona na porównaniu ze sobą każdego elementu (każdy z każdym - stąd kwadratowa złożoność algorytmu). Jeśli
algorytm ustali, że elementy nie są po kolei, po prostu zamieni je ze sobą.
# Dodawanie rekordów
Ponieważ będziesz musiał porównać każdy element z każdym, potrzebne będą ci dwie pętle for -
każda z osobną zmienną iteracyjną. Wystartuj od takiego kodu:
```
#include <iostream>
Po dodaniu tabeli będzie ona widoczna na liście po lewej stronie. Kliknij na tabelę, na następnie na *Wstaw*. W ten sposób
dodać możesz kilka rekordów.
using namespace std;
Uzupełnij wszystkie tabele przynajmniej po 3 rekordami, a wybraną 10 rekordami.
int main() {
Zamieść w sprawozdaniu komendy SQL dodające rekordy (INSERT ..)
Wykonaj to jako zadanie domowe.
# Zapytanie!
Zapytania SQL pozwalają wybrać konkretne dane. Na przykład `SELECT * FROM tabela` pokazuje nam zawartość
całej tabeli. Każde zapytanie SQL jest zawsze skierowane do **jakiejś** bazy danych, tak więc najpierw wybierz
swoją, a następnie kliknij SQL.
Spróbuj wybrać wszystkie rekordy ze swojej tabeli. Zrób to zapytaniem `SELECT * FROM nazwatabeli`.
Twoim celem na tym laboratorium jest napisanie zapytania SQL które umożliwi pobranie $sql$.
int items[] = {3,7,5,4,8,2,1};
for (int i=0; i<7; i++) {
for (int j=0; j<7; j++) {
...
}
}
cout << "Posortowane elementy to" << endl;
for (int i=0; i<7; i++) {
cout << " " << items[i];
}
cout << endl;
}
```
Wymagane będzie użycie klauzuli **JOIN**. Dodawaj rekordy tak, aby w wyniku otrzymać
przynajmniej 6 rekordów.
Postaraj się go uzupełnić tak, aby program wypisał liczby w odpowiedniej kolejności.
Musisz posortować tablicę `items`. Uważaj na porównywanie elementu z samym sobą -
sprawdź odpowiednio `i` oraz `j` - w razie czego użyj `continue`.
Przydatne zasoby:
*[jak działa JOIN](http://www.sqlpedia.pl/laczenie-tabel-sql/)
*[jak działa JOIN bis](http://funkcje.net/nsc/4/2867/3/38/page.html)
*[przykłady JOIN w PostgreSQL](http://home.agh.edu.pl/~ligeza/wiki/_media/bazydanych:sql-wyzwalacze-reguly-funkcje.pdf?id=bazydanych%3Awyklady&cache=cache)
(oraz masy innych rzeczy, dla nas nieistotnych)
Przygotuj i wykonaj takie zapytanie.
Zamieść w sprawozdaniu zapytanie i zrzut ekranu z wynikiem.
**Zanim zakończysz pracę, skonsultuj swoje wyniki z prowadzącym!**
# Wyślij sprawozdanie
Ze względu na ćwiczeniowy charakter tego sprawozdania, wysłać proszę jedynie kod
...
...
@@ -86,3 +87,64 @@ co było ujęte w instrukcjach. W szczególności gwarantowane są zadania z:
* napisania prostego programu w C++
* napisaniu prostego zapytania SQL
# Ewolucja programisty
**Pierwszy rok na studiach:**
```
program Hello(input, output);
begin
writeln ('Hello world');
end.
```
**Świeżo po uczelni:**
```
#include <stdio.h>
int main (int argc, char **argv) {
printf ("Hello World!\n");
}
```
**Weteran:**
```
#include <stream.h>
const int MAXLEN = 80;
class outstring {
private:
int size;
char str[MAXLEN];
public:
outstring() { size=0; }
~outstring() {size=0;}
void print();
void assign(char *chrs);
};
void outstring::print() {
int i;
for (i=0 ; i< size ; i++)
cout << str[i];
cout << "\n";
};
void outstring::assign(char *chrs) {
int i;
for (i=0; chrs[i] != '\0';i++)
str[i] = chrs[i];
size=i;
};
main (int argc, char **argv) {
outstring string;
string.assign("Hello World!");
string.print();
}
```
**Menedżer**
_Stefan, potrzebuję na jutro program wypisujący "Hello World!"_