Skip to content
Snippets Groups Projects
Commit 6de2df87 authored by Piotr Maślanka's avatar Piotr Maślanka
Browse files

lab6, oh joy

parent 64eaec9d
No related branches found
No related tags found
No related merge requests found
Pipeline #2352 passed with stage
in 26 seconds
Laboratorium 5
Laboratorium 6
==============
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!"_
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment