Witam
Czy mogę prosić o pomoc? Najlepiej gotowy kod ;) Nie będę ukrywał, że zależy mi na czasie ;) Stawiam dobre piwko ;)
-
Napisać strukturę, która będzie zawierała następujšce pola:
- Marka pojazdu (char*) - maksymalnie 20 znaków
- Model pojazdu (char*) - maksymalnie 25 znaków
- VIN (char*) - dokładnie 17 znaków
- Rok produkcji (int)
-
Napisać funkcję, która inicjuje (alokuje pamięć) wszystkie pola struktury (jako argument podajemy wskanik do tej struktury) oraz fukncję, która zwalnia przydzielonš pamięć
z wszystkich pól struktury. -
Napisać funkcję otwierajšcš plik VehicleList.txt i wczytujšcš podane samochody do struktur. W pierwszej linii pliku (pierwszy znak) znajduje się liczba elementów w licie samochodów. Lata produkcji samochodów sš z przedziału (1980-1999). Wczytać za pomocš tej funkcji wszystkie samochody znajdujšce się na licie do tablicy o podanej długoci. Wyswietlić listę samochodów na konsoli. cieżkę do pliku można podać jako stały cišg znaków. Do odczytania wartoci liczbowych z pliku (liczby elementów bšd roku produkcji) można użyć funkcji sscanf, która jako pierwszy argument pobiera ródło, którym może być cišg znaków, a nie standardowe wejcie tak jak w przypadku fukncji scanf. Funkcji sscanf można również użyć do odczytania całej linii z pojedynczym samochodem i automatycznie uzupełnić strukturę.
-
Napisać funkcję zapisujšcš wszystkie elementy w tablicy z samochodami do pliku SortedVehicleList.txt w takim samym formacie przy czym jako separator użyć rednika ';'.
-
Napisać funkcję sortujšcš tablicę z samochodami po latach produkcji za pomocš algorytmu sortowania przez zliczanie. Funkcja powinna pobierać wskanik do tablicy nieposortowanej, jej rozmiar oraz wskanik do tablicy, w której będš znajdowały się posortowane elementy.
Podpowiedzi do algorytmu sortowania przez zliczanie:
-
Ponieważ lata produkcji samochodów w licie sš z okrelonego zakresu możemy zastosować sortowanie przez zliczanie (należy zadeklarować tablicę pomocniczš, w której będziemy zliczać ile samochodów przypada na poszczególny rok produkcji. (1980 - 0, 1981 - 1, 1982 - 0, ... , 1998 - 1, 1999 - 0)
-
Tablica pomocnicza, powinna być indeksowana od 0!
-
Po przydzieleniu poszczególnym datom produkcji iloci samochodów w nich wyprodukowanych przystępujemy do ustalania indeksów elementów w tablicy posortowanej.
-
W ostatniej pętli przydzielamy odpowiednie elementy do odpowiednich miejsc w tablicy posortowanej. Dokładny algorytm sortowania przez zliczanie naelży znaleć w Internecie!