Zadanie 1 - kompilacja
Do każdego z poprawnie rozwiązanych zadań utwórz plik solution[X].exe
gdzie [X] jest numerem rozwiązywanego zadania i odpowiada zawartości pliku task[X].c
.
np. Plik task1.c ma zostać skompilowany do pliku solution1.exe
Zadanie 2 (task2.c
, solution2.exe
)
Utwórz zmienne tak aby zajmowały jak najmniej miejsca w pamięci i przechowywały wskazane wartości:
var1
przechowującą wartość 32 000.var2
przechowującą wartość 0.94344.var3
przechowującą pierwszą literę twojego imienia.var4
przechowującą twoje nazwisko.- Utwórz globalną stałą
TAB_LEN
przechowującą wartość 20. Napisać w komentarzu czym różni się stała od zmiennej.
Wypisać wartości w konsoli w formie:
var1 = 32000
var2 = 0.94344
var3 = J
var4 = Kowalski
TAB_LEN = 20
Zadanie 3 (task3.c
, solution3.exe
)
Utworzyć zmienną task3_var
przechowującą liczbę całkowitą.
Przypisać do zmiennej wartość podaną przez używkotnika.
Przed podaniem wartości wypisz w konsoli napis “Podaj wartosc zmiennej task3_var:”.
Jeśli wartość:
- jest mniejsza niż 30 wypisz napisz
task3_var jest mniejsza od 30
- jeśli wartość w zmiennej
task3_var
jest większa od 30 wypisztask3_var jest wieksza od 30
, - jeśli wartość w zmiennej
task3_var
jest równa 30 wypisztask3_var jest rowne 30
.
Zadanie 4 (task4.c
, solution4.exe
)
Utworzyć zmienną task4_var
przechowującą liczbę całkowitą.
Przypisać do zmiennej wartość podaną przez używkotnika.
Przed podaniem wartości wypisz w konsoli napis “Podaj wartosc zmiennej task4_var:”.
Za pomocą instrukcji warunkowej switch jeśli:
- podana wartość jest równa 100 zwiększ wartość zmiennej
task4_var
o 10%. - podana wartość jest równa 20 zwiększ wartość zmiennej
task4_var
o 20%. - podana wartość jest równa 3 pomnóż wartość zmiennej
task4_var
razy 5. - w przeciwnym przypadku nie modyfikuj wartości zmiennej.
Wypisz końcową wartość w konsoli.
Zadanie 5 (task5.c
, solution5.exe
)
Utworzyć zmienną tab
przechowującą liczby: [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7].
Za pomocą pętli for
wypisać zawartość tablicy w odwrotnej kolejności w postaci:
tab[7] = 0.7
tab[6] = 0.6
tab[5] = 0.5
...
tab[1] = 0.1
Zadanie 6 (task6.c
, solution6.exe
)
Utworzyć zmienną task6_var
przechowującą liczbę całkowitą.
Przypisać do zmiennej wartość podaną przez używkotnika.
Przed podaniem wartości wypisz w konsoli napis “Podaj wartosc zmiennej task6_var:”.
Używając pętli while wypisz kolejne potęgi liczby 2 aż do liczby przechowywanej w zmiennej task6_var
włącznie. W konsoli powinny zostać wypisane w następującej postaci:
Podaj wartosc zmiennej task6_var: 64
[1,2,4,8, 16, 32, 64]
Zadanie 7 (task7.c
, solution7.exe
)
Napisz funkcję power()
która przyjmuje dwa artumenty:
- a - liczba zmiennoprzecinkowa
- b - liczba całkowita Funkcja powinna zwracać wartość \(a^b\) Przetestuj działanie funkcji na wartościach a=0.5 i b=4. Wypisz w konsoli wynik działania funkcji w następującej postaci:
a = 0.5
b = 4
0.5^4 = 0.0625
Zadanie 8 (task8.c
, solution8.exe
)
Utwórz funkcję countk()
która przyjmuje tablicę znaków. Funkcja zwraca ilość wystąpień znaku k
w tablicy.
Przetestuj działanie funkcji na następujących łańcuchach:
- “kkkk”
- ” k k “
- ” k asd kk”
Wypisz w konsoli wyniki testów w postaci:
|kkkk| zawiera 4 litery k. | k k | zawiera 2 litery k. | k asd kk| zawiera 3 litery k.
Zadanie 9 (task9.c
, solution9.exe
)
Utworzyć zmienną globalną album
przechowującą wartość 0.
Utworzyć zmienną wskaźnikową wsk1
przechowującą adres do zmiennej album
.
-
Wypisz adres jaki przechowuje zmienna
wsk1
. -
Za pomocą zmiennej
wsk1
wypisz wartość pod adresem który przechowuje. -
Używając wskaźnika zmień zawartość zmiennej pod adresem przechowywanym przez zmienną
wsk1
na swój numer albumu -
Wypisz zawartość zmiennej
album
.
Zadanie 10 (task10.c
, solution10.exe
)
Utworzyć strukturę funkcjakwadratowa
która będzie przechowywać współczynniki równania kwadratowego a
,b
,c
jako wartości zmiennoprzecinkowe, ponadto miejsca zerowe funkcji jako x1
i x2
oraz informację czy dana funkcja posiada miejsca zerowe roots
w postaci wartości true/false.
Zadanie 11 (task10.c
, solution10.exe
) - Oznacz rozwiązanie komentarzem // zadanie 11
Utworzyć tablicę task11_var
przechowującą 100 struktur funkcjakwadratowa
. Wypełnij tablicę strukturami z losowymi wartościami a,b,c w przedziale od 0 do 10.
Zadanie 12 (task10.c
, solution10.exe
) - Oznacz rozwiązanie komentarzem // zadanie 12
Napisz funkcję calculate()
obliczającą miejsca zerowe funkcji kwadratowej w strukturze przekzanej jako argument funkcji. Funkcja przypisuje wartości x1, x2 i roots do struktury dla której są obliczane. Wykorzystaj funkcję by obliczyć miejsca zerowe i uzupełnić wyniki w tablicy task11_var
. Wypisz rezultat w konsoli.
Odsyłanie rozwiązań:
Pliki z rozwiązaniem należy spakować do archiwum .zip nazwanym pierwszymi literami imienia i nazwiska + numer albumu. np. jk123456.zip
jeśli nazywasz się Jan Kowalski i posiadasz numer albumu 123456.
Nastepnie za pomocą formularza należy przesłać archiwum.