Saša Singer: Programiranje 2 — Primjeri uz predavanja
Zadnja promjena: 17. srpnja 2020.
- Popis svih datoteka za primjere, po predavanjima:
- 1. predavanje
— Uvod u kolegij, funkcije, prijenos argumenata,
rekurzivne funkcije — prvi dio
- 2. predavanje
— Rekurzivne funkcije — drugi dio,
struktura programa — prvi dio
- 3. predavanje
— Struktura programa — drugi dio,
višedimenzionalna polja — prvi dio
- 4. predavanje
— Višedimenzionalna polja — drugi dio,
pokazivači — prvi dio, dinamičko rezerviranje memorije
- 5. predavanje
— Stringovi, obrada znakova i stringova
- 6. predavanje
— Broj riječi, pokazivači — drugi dio: sortiranje
rječnika, argumenti komandne linije, pokazivač na funkciju
- Broj riječi u stringu:
br_rij_1.c,
br_rij_1.out,
br_rij_2.c,
br_rij_2.out
- Pretvaranje stringa u cijeli broj:
f_atoi.c,
f_atoi.out
- Pretvaranje cijelog broja u string:
f_itoa_1.c,
f_itoa_1.out
- Sortiranje rječnika:
my_gets.c,
dicts_1.c,
dictsort.in,
dicts_1.out,
dicts_2.c,
dicts_2.out
- Obična i produljena trapezna formula:
integ_1.c,
integ_1.out,
integ_2.c,
integ_2.out
- 7. predavanje
— Pokazivač na funkciju, složene deklaracije, strukture,
unije, polja bitova
- 8. predavanje
— Vezane liste — prvi dio
- Liste 1 (operacije na početku, broj elemenata, ispis):
l_1.c,
l_1.in,
l_1.out
- Liste 2 (traženje broja i zadnjeg, ubaci/izbaci iza):
l_2.c,
l_2.in,
l_2.out
- Liste 3 (ubacivanje na kraj liste - loše i dobro):
l_3.c,
l_3.out
- Liste 4 (kreiranje liste straga i pamćenje zadnjeg):
l_4.c,
l_4.in,
l_4.out
- 9. predavanje
— Vezane liste — drugi dio
- Liste 5 (sortirano ubacivanje, Insertion Sort):
l_5.c,
l_5.in,
l_5.out,
l_5a.c,
l_5a.out
- Liste 6 (brisanje prvog parnog elementa):
l_6.c,
l_6.in,
l_6.out
- Liste 7 (spajanje ili konkatenacija dvije liste):
l_7.c,
l_7.in,
l_7.out
- Liste 7r (to isto, ali sve funkcije su rekurzivne):
l_7r.c,
l_7r.in,
l_7r.out
- Liste 8 (sortirano spajanje — merge, okretanje):
l_8.c,
l_8.in,
l_8.out
- Liste 8r (to isto, ali sve funkcije su rekurzivne):
l_8r.c,
l_8r.in,
l_8r.out
- Liste 9 (MergeSort za liste):
l_9.c,
l_9.in,
l_9.out
- Liste 9_w (MergeSort za liste s puno ispisa):
l_9_w.c,
l_9_w.in,
l_9_w.out
- Liste 9a (MergeSort za liste s brojem elemenata):
l_9a.c,
l_9.in,
l_9a.out
- 10. predavanje
— Datoteke — prvi dio
- Broj znakova u tekstualnoj datoteci:
br_zn.c (DOS format: 623 bytea),
br_zn.out
- Broj znakova u binarnoj datoteci:
br_zn_b.c (DOS format: 624 bytea),
br_zn_b.out
- Kopiranje datoteke znak po znak:
fcopy_1.c,
fcopy_1.in,
fcopy_1.out
- Kopiranje datoteke znak po znak (funkcija):
fcopy_1f.c,
fcopy_1f.in,
fcopy_1f.out
- Formatirani ulaz i izlaz za stringove:
fio_str.c,
fio_str.out
- Uvjetno kopiranje riječi:
f_zad_1.c,
f_zad_1.in,
f_zad_1.out
- Kopiranje datoteke znak po znak (pogrešna do-while petlja s feof):
fcopy_2a.c,
fcopy_2a.in,
fcopy_2a.out
- Kopiranje datoteke znak po znak (pogrešna while petlja s feof):
fcopy_2b.c,
fcopy_2b.in,
fcopy_2b.out
- Kopiranje datoteke liniju po liniju (funkcija):
fcopy_3f.c,
fcopy_3f.in,
fcopy_3f.out
- 11. predavanje
— Datoteke — drugi dio
- Primjer 1 za ftell (čitanje):
fpos.c,
fpos.out
- Primjer 2 za ftell (dodavanje i čitanje):
fpos_a.c,
fpos_a.out
- Primjer 3 za ftell (čitanje i dodavanje):
fpos_ap.c,
fpos_ap.out
- Naopako binarno kopiranje datoteke:
freverse.c,
freverse.in,
freverse.out
- Naopaki ispis datoteke (na stdout):
frev_out.c,
frev_out.in,
frev_out.out
- Obrada računa (direktni binarni ulaz i izlaz):
racuni.c,
racuni.out
- Invertiranje datoteke:
finvert.c,
finvert.in,
finvert.dat
- 12. predavanje
— Pretprocesor, standardna biblioteka, mjerenje vremena
- Poziv qsort, bsearch (nekorektno):
qs_1.c,
qs_1.out
- Poziv qsort, bsearch (korektno):
qs_1a.c,
qs_1a.out
- Poziv qsort, bsearch (cast u pozivu):
qs_1b.c,
qs_1b.out
- Poziv qsort, bsearch (tip za cast u pozivu):
qs_1c.c,
qs_1c.out
- Uzlazno sortiranje polja int-ova (usporedi za qsort):
qs_2c.c,
qs_2c.out
- Silazno sortiranje polja int-ova (usporedi za qsort):
qs_3.c,
qs_3.out
- Mjerenje realnog vremena (time, difftime):
time_1.c,
time_1.out
- Mjerenje procesorskog vremena (clock):
time_2.c,
time_2.out
- Trajanje qsort iz :
qs_time.c,
qs_time.out
Napomene:
- Svi materijali dostupni na ovim stranicama zaštićeni su
Zakonom o autorskom pravu.
- Prema tome, bez dozvole autora,
nije ih dozvoljeno
distribuirati i umnožavati.
- Svakom pojedincu
dozvoljeno
ih je koristiti samo za osobne potrebe.