C/Zad5 2016From MJanik(Difference between revisions)
Majanik (Talk | contribs)
(Created page with "Na laboratoriach pojawią się funkcje (<b>wykład 6</b>). Powrócimy również do pracy na tablicach (<b>wykład 5</b>) oraz struktury switch-case (<b>wykład 3, slajd 11</b>). ...") Newer edit → Revision as of 10:24, 5 April 2016Na laboratoriach pojawią się funkcje (wykład 6). Powrócimy również do pracy na tablicach (wykład 5) oraz struktury switch-case (wykład 3, slajd 11). <1-- Napisać program umożliwiający różnorakie działania na ciągu liczb: wyszukiwanie najmniejszej i największej wartości, sortowanie. Wartości ciągu powinny być a) ustawiane z klawiatury, b) losowane. Ilość liczb w ciągu powinna być podawana na początku działania programu (liczba N).
Powyższa część: 5 pkt.
Należy dołączyć biblioteki: #include <stdlib.h> #include <time.h> W funkcji głównej main na początku należy dopisać: srand(time(NULL)); //ustawienie ziarna z zegara systemowego by uzyskać losowość ("wartości początkowej" dla generatora liczb losowych) Wylosowanie pojedynczej liczby z zakresu 0-99: int losowa = rand()%100;
Sortowanie przez wstawianie (ang. Insert Sort, Insertion Sort) - jeden z najprostszych algorytmów sortowania, którego zasada działania odzwierciedla sposób w jaki ludzie ustawiają karty - kolejne elementy wejściowe są ustawiane na odpowiednie miejsca docelowe. Schemat działania algorytmu (za wikipedia) 1. Utwórz zbiór elementów posortowanych i przenieś do niego dowolny element ze zbioru nieposortowanego. 2. Weź dowolny element ze zbioru nieposortowanego. 3. Wyciągnięty element porównuj z kolejnymi elementami zbioru posortowanego póki nie napotkasz elementu równego lub elementu większego (jeśli chcemy otrzymać ciąg niemalejący) lub nie znajdziemy się na początku/końcu zbioru uporządkowanego. 4. Wyciągnięty element wstaw w miejsce gdzie skończyłeś porównywać. 5. Jeśli zbiór elementów nieuporządkowanych jest niepusty wróć do punkt 2. Pseudokod sortowania przez wstawianie sortujący tablicę A: for i = 1 to length(A) - 1 x = A[i] j = i while j > 0 and A[j-1] > x A[j] = A[j-1] j = j - 1 end while A[j] = x[3] end for
--> |