powrót

Ćwiczenia:

Uwaga! Kolokwium poprawkowe odbędzie się we Wtorek 17 marca o 15:30. Wszytkich chętny proszę o zgłaszanie się drogą mailową do 14 marca do 23:59.

  1. 07-10-2019
  2. 14-10-2019
  3. 21-10-2019
  4. 28-10-2019
  5. 04-11-2019
  6. 18-11-2019
  7. 25-11-2017 Kolokwium aula: C. Przykładowe kolokwium można znaleźć tutaj.
  8. 02-12-2019 (termin: 16-12-2019)
  9. 09-12-2019 (termin: 23-12-2019)
  10. 16-12-2019 (termin: 06-01-2020)
  11. 13-01-2020
  12. 20-01-2020
  13. 27-01-2018 Kolokwium aula: C

Literatura:

Programowanie

Algorytmy

Wykonane zadania:

Zasady zgłaszania, Konfiguracja Dev-C++

Zadanie 3 (termin: 11:45:00 02-12-2019)

Napisz program, który:

Uwaga! Aby program działał szybciej, można nie mierzyć czasu dla wolnych algorytmów i dużych tablic (sortujących dłużej niż minutę).

Zadanie 2 (termin: 11:45:00 21-10-2019)

Napisz procedurę (1 pkt), która wypisuje pierwiastki równania kwadratowego

A * x2 + B * x + C = 0
A, B, C, x ∈ R
Wejście:
A B C
Wyjście:
L x1 x2
gdzie L oznacza liczbę rozwiązań, a x1 x2 ... xL poszczególne rozwiązania ułożone niemalejąco
Przykład:
1 0 0
1 0 //liczby całkowite wypisują się bez kropki dziesiętnej

-2 3 -1
2 0.5 1	//wyniki posortowane niemalejąco

0 1 2
1 -2

0 0 1
0

0 0 0
R	//oznacza nieskończenie wiele rozwiązań (cały zbiór liczb rzeczywistych)
ZAŁĄCZNIKI:
Plik z kodem źródłowym (*.c)

Proszę dokładnie przeanalizować wszystkie możliwości, za oddanie dwukrotnie błędnego programu obniżę ocenę o 0,5.

Zadanie 1 (termin: 11:45:00 14-10-2019)

Napisz program, który zamienia dwie zmienne miejscami nie korzystając z trzeciej zmiennej (1 pkt)
Operatory użyte w programie, a których nie używaliśmy na zajęciach, należy zdefiniować na początku pliku z pseudokodem w następujący sposób:
PRZYKŁAD:
// a SHIFTL b – operator, który reprezentację bitową liczby a przesuwa w lewo o b bitów obcina bity z lewej strony a z prawej dopisuje zerami
Należy też podać tablicę priorytetów operatorów użytych w pseudokodzie.
PRZYKŁAD:

//PRIORYTET OPERATORA
//	()
//	/ * DIV MOD
//	+ -
//	SHIFTL
//	=
Linijka rozpoczynająca się symbolami // oznacza komentarz w pseudokodzie do końca linii.
Proszę również określić liczbę operacji w Państwa rozwiązaniu.
PRZYKŁAD:
x = a	//1 przypisanie
a = b	//1 przypisanie
b = x	//1 przypisanie
//razem 3 operacje
Rozwiązanie o najmniejszej liczbie operacji otrzyma dodatkowy punkt (0.5 pkt).
ZAŁĄCZNIKI:
Plik z kodem źródłowym (*.c)
Plik z pseudokodem(*.txt)

l. p. link do pseudokodu nr indeksu liczba operacji zajęta pamięć liczba punktów
1 txt test 3 3 0
2 txt 452693 4 2 (1.5)
3 txt 452623 4 2 2
4 txt 452753 4 2 (1.5)
5 txt 426395 4 2 (1)
6 txt 452617 4 2 2
7 txt 452158 6 2 1
8 txt 430722 6 2 (1)
9 txt 423902 6 2 (1)
10 txt 406128 6 2 (1)
11 txt 452659 6 2 (1.5)
12 txt 452683 6 2 (1.5)
13 txt 452664 7 2 1.5
14 txt 452616 8 2 (1.5)
15 txt 452736 9 2 1.5
16 txt 452648 12 2 1.5