Start | Zajęcia 1 | Zajęcia 2 | Zajęcia 3 | Zajęcia 4 | Zajęcia 5 | Zajęcia 6 | Zajęcia 7 | Zajęcia 8 | Zajęcia 9 | Zajęcia 10 | Pliki z zajęć |
---|
Poniżej znajduje się lista plików nagłówkowych i źródłowych wraz z krótkim opisem zawartych w nich funkcji i zadeklarowanych typów, stałych, struktur, itp.
Dokładniejszy opis działania poszczególnych funkcji można znaleźć w komentarzach poprzedzających każdą funkcję w plikach źródłowych.
Tutaj znajduje się paczka zip
zawierająca wszystkie opisane pliki.
Pliki te można też skopiować z katalogu /home/grochu/jpr
po zalogowaniu się na serwerze kont studenckich ferm
wydając polecenie:
cp -r /home/grochu/jpr/ jakas_nazwa_katalogu
deklaracje | krótki opis |
---|---|
float potega(float p, int w) float rpotega(float p, int w) | oblicza wartość liczby p podniesionej do potęgi w ,wersja iteracyjna i rekurencyjna |
long silnia(int i) long rsilnia(int i); | obliczanie silni wersja iteracyjna i rekurencyjna |
int czy_pierwsza(int liczba) | sprawdza czy dana liczba jest liczbą pierwszą |
deklaracje | działanie |
---|---|
float *wczytaj(float *t,int n) void wyswietl(float *tab,int n) | wczytuje (wyświetla) n elementów tablicy t[] |
float *odwroc(float *t,int n) | odwraca kolejność elementów w tablicy |
float srednia(float t[],int n) | oblicza wartość średnią n liczb zawartych w tablicy tab |
int maxind(float *tab,int n) | szuka elementu tablicy zawierającego maksymalną wartość |
float* sortuj(float *t,int n) | sortuje elementy tablicy przez wybór elementu maksymalnego |
deklaracje | działanie |
---|---|
char *czytajlinie(char *linia,int max) | wczytuje linię tekstu do tablicy o rozmiarze max |
int dlugosc(char *napis) | wyznacza długość napisu |
char *kopia(char *s1,char *s2) | kopiuje zawartość napisu s2 do tablicy s1 |
char *sklej(char *s1,char *s2) | łączy dwa łańcuchy znakowe |
int znajdz(char *tekst,char *wzor) | sprawdza czy ciąg wzor jest podciągiem łańcucha tekst |
char *malenaduze(char *napis) | zamienia wszystkie małe litery z tablicy napis na duże |
deklaracje | opis |
---|---|
float ∗∗utworz_macierz(int w,int k) | tworzy dynamicznie macierz o zadanych wymiarach |
void zwolnij_macierz(float ∗∗m,int w) | zwalnia pamięć zajętą przez macierz |
void wczytaj_macierz(float ∗∗m,int w,int k) void wyswietl_macierz(float ∗∗m,int w,int k) | wczytywanie elementów macierzy z klawiatury i wyświetlanie macierzy na ekranie |
float∗∗ dodaj_macierze(float ∗∗m1,float ∗∗m2,int w,int k) | dodaje dwie macierze |
void zapisz_macierz(FILE *p, float ∗∗m, int w, int k) | zapisuje macierz m w pliku p otworzonym do zapisu w trybie tekstowym |
float ∗∗odczytaj_macierz(FILE *p, int *w, int *k) | wczytuje macierz z pliku tekstowego |
struktura | pola |
---|---|
struct zespolone Z | float re - część rzeczywista float im - część urojona |
deklaracje | opis |
void wczytaj_zesp(Z *z) void wyswietl_zesp(Z z) | wczytywanie i wyświetlanie liczby zespolonej |
Z dodaj_zesp(Z z1,Z z2) | dodawanie liczb zespolonych |
float modul(Z z) | oblicza modół danej liczby zespolonej |
float argument(Z z) | oblicza argument liczby zespolonej |
Program | Opis | Program zawiera pliki |
---|---|---|
potega | oblicza potęgę liczby rzeczywistej | funkcje.c funkcje.h potega.c |
silnia | oblicza silnię | funkcje.c funkcje.h silnia.c |
pierwsze | wypisuje liczby pierwsze | funkcje.c funkcje.h lpierwsze.c |
srednia | oblicza srednią wartość z N podanych liczb | funkcje.c funkcje.h srednia.c |
odwroc | wyswietla tablicę liczb w odwrotnej kolejności | funkcje.c funkcje.h odwroc.c |
sortuj | sortuje N podanych liczb | funkcje.c funkcje.h sortuj.c |
malenaduze | zamienia małe litery na duże | fstr.c fstr.h malenaduze.c |
sklej | łączy podane linie tekstu w jeden napis | fstr.c fstr.h sklej.c |
grep | szuka wzorca w podanym tekście | fstr.c fstr.h grep.c |
zesp | oblicza moduł i argument podanej liczby zespolonej | zespolone.c zespolone.h zesp.c |
macierz1 | wczytuje i wyświetla macierz o podanych wymiarach | macierz.c macierz.h mac1.c |
macierz2 | dodaje dwie macierze i zapisuje wynik do pliku | macierz.c macierz.h mac2.c |
macierz3 | wczytuje macierze z pliku i wyświetla ja na ekranie | macierz.c macierz.h mac3.c str.c str.h |
W systemie Linux kompilację programu w języku C przeprowadzamy wydając w konsoli polecenie cc
i podając jako argumenty listę plików źródłowych niezbędnych do utworzenia pliku wykonywalnego.
Na przykład aby skompilować program potega wydajemy polecenie:
cc potega.c funckje.c -o potega
Program uruchamiamy podając jego nazwę, np:
./potega
Jeżeli program wykorzystuje funkcje z biblioteki matematycznej math.h
wówczas podczas kompilacji należy dodać opcję -lm
, t tak, w przypadku programu zesp należy wykonać polecenie:
cc -lm zesp.c zespolone.c -o zesp