Napisz program, który wypisze na standardowe wyjście indeks najmniejszego elementu tablicy.
Program przetestuj dla tablicy dane = [ 423, 654, 423, 659, 345, 432, 765, 534, 469, 421, 6457, 856, 543, 645, 523, 576, 7645].
Specyfikacja:
Dane:
dane – tablica liczb całkowitych w której należy znaleźć indeks najmniejszego elementu
rozmiarZbioru – rozmiar tablicy dane; liczba naturalna
Wynik:
indeks najmniejszej liczby w tablicy dane
R1Jn6HL3LpkLP1
Przykładowe rozwiązanie zadania:
Linia 1. kratka include otwórz nawias ostrokątny iostream zamknij nawias ostrokątny.
Linia 3. using namespace std średnik.
Linia 5. int main otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy.
Linia 6. int dane otwórz nawias kwadratowy zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 423 przecinek 654 przecinek 423 przecinek 659 przecinek 345 przecinek 432 przecinek 765 przecinek 534 przecinek 469 przecinek 421 przecinek 6457 przecinek 856 przecinek 543 przecinek 645 przecinek 523 przecinek 576 przecinek 7645 zamknij nawias klamrowy średnik.
Linia 7. int rozmiarZbioru znak równości 17 średnik.
Linia 8. int indexMin znak równości 0 średnik.
Linia 10. for otwórz nawias okrągły int i znak równości 1 średnik i otwórz nawias ostrokątny rozmiarZbioru średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 11. if otwórz nawias okrągły dane otwórz nawias kwadratowy indexMin zamknij nawias kwadratowy zamknij nawias ostrokątny dane otwórz nawias kwadratowy i zamknij nawias kwadratowy zamknij nawias okrągły otwórz nawias klamrowy.
Linia 12. indexMin znak równości i średnik.
Linia 13. zamknij nawias klamrowy.
Linia 14. zamknij nawias klamrowy.
Linia 16. cout otwórz nawias ostrokątny otwórz nawias ostrokątny indexMin otwórz nawias ostrokątny otwórz nawias ostrokątny endl średnik.
Linia 18. return 0 średnik.
Linia 19. zamknij nawias klamrowy.
21
Ćwiczenie 2
Uzupełnij podany kod, aby otrzymać działającą implementację algorytmu sortowania przez wybieranie. Zbiór należy posortować nierosnąco.
Program przetestuj dla tablicy dane = [3, 5, 6, 7, 64, 745, 534, 765, 543, 7654, 543, 65, 543, 234, 654, 76, 65]
Specyfikacja:
Dane:
dane – tablica liczb całkowitych
rozmiarZbioru – rozmiar tablicy dane; liczba naturalna
Wynik:
posortowany nierosnąco ciąg liczb z tablicy dane; każda liczba wydrukowana jest w nowej linii
REQ0OeFdpfwFM1
Przykładowe rozwiązanie zadania:
Linia 1. kratka include otwórz nawias ostrokątny iostream zamknij nawias ostrokątny.
Linia 3. using namespace std średnik.
Linia 5. int main otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy.
Linia 6. int dane otwórz nawias kwadratowy zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 3 przecinek 5 przecinek 6 przecinek 7 przecinek 64 przecinek 745 przecinek 534 przecinek 765 przecinek 543 przecinek 7654 przecinek 543 przecinek 65 przecinek 543 przecinek 234 przecinek 654 przecinek 76 przecinek 65 zamknij nawias klamrowy średnik.
Linia 7. int rozmiarZbioru znak równości 17 średnik.
Linia 8. int indexMin przecinek temp średnik.
Linia 10. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny rozmiarZbioru minus 1 średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 11. indexMin znak równości i średnik.
Linia 12. for otwórz nawias okrągły int j znak równości i plus 1 średnik j otwórz nawias ostrokątny rozmiarZbioru średnik j plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 13. if otwórz nawias okrągły dane otwórz nawias kwadratowy indexMin zamknij nawias kwadratowy otwórz nawias ostrokątny dane otwórz nawias kwadratowy j zamknij nawias kwadratowy zamknij nawias okrągły otwórz nawias klamrowy.
Linia 14. indexMin znak równości j średnik.
Linia 15. zamknij nawias klamrowy.
Linia 16. zamknij nawias klamrowy.
Linia 18. temp znak równości dane otwórz nawias kwadratowy i zamknij nawias kwadratowy średnik.
Linia 19. dane otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości dane otwórz nawias kwadratowy indexMin zamknij nawias kwadratowy średnik.
Linia 20. dane otwórz nawias kwadratowy indexMin zamknij nawias kwadratowy znak równości temp średnik.
Linia 21. zamknij nawias klamrowy.
Linia 23. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny rozmiarZbioru średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 24. cout otwórz nawias ostrokątny otwórz nawias ostrokątny dane otwórz nawias kwadratowy i zamknij nawias kwadratowy otwórz nawias ostrokątny otwórz nawias ostrokątny endl średnik.
Linia 25. zamknij nawias klamrowy.
Linia 27. return 0 średnik.
Linia 29. zamknij nawias klamrowy.
31
Ćwiczenie 3
Napisz program, który posortuje niemalejąco podaną tablicę dane z użyciem algorytmu sortowania przez wybieranie. Policz liczbę wykonanych porównań elementów tablicy oraz przestawień.
Program przetestuj dla tablicy dane = [654, 435, 543, 764, 432, 364, 765, 342, 746, 845, 541, 111, 325, 257].
Specyfikacja:
Dane:
dane – tablica liczb całkowitych, którą należy posortować
rozmiarDanych – rozmiar tablicy dane; liczba naturalna
Wynik:
liczbaPorownan – liczba porównań elementów tablicy dane; liczba naturalna
liczbaPrzestawien – liczba przestawień elementów tablicy dane; liczba naturalna
posortowana niemalejąco tablica dane
R1Im1sywmyZra1
Przykładowe rozwiązanie zadania:
Linia 1. kratka include otwórz nawias ostrokątny iostream zamknij nawias ostrokątny.
Linia 3. using namespace std średnik.
Linia 5. int main otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy.
Linia 6. int dane otwórz nawias kwadratowy zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 654 przecinek 435 przecinek 543 przecinek 764 przecinek 432 przecinek 364 przecinek 765 przecinek 342 przecinek 746 przecinek 845 przecinek 541 przecinek 111 przecinek 325 przecinek 257 zamknij nawias klamrowy średnik.
Linia 7. int rozmiarDanych znak równości 14 średnik.
Linia 8. int liczbaPorownan znak równości 0 średnik.
Linia 9. int liczbaPrzestawien znak równości 0 średnik.
Linia 10. int temp średnik.
Linia 12. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny rozmiarDanych minus 1 średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 13. int indexMin znak równości i średnik.
Linia 14. for otwórz nawias okrągły int j znak równości i plus 1 średnik j otwórz nawias ostrokątny rozmiarDanych średnik j plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 15. if otwórz nawias okrągły dane otwórz nawias kwadratowy j zamknij nawias kwadratowy otwórz nawias ostrokątny dane otwórz nawias kwadratowy indexMin zamknij nawias kwadratowy zamknij nawias okrągły otwórz nawias klamrowy.
Linia 16. indexMin znak równości j średnik.
Linia 17. zamknij nawias klamrowy.
Linia 18. liczbaPorownan plus plus średnik.
Linia 19. zamknij nawias klamrowy.
Linia 21. liczbaPrzestawien plus plus średnik.
Linia 22. temp znak równości dane otwórz nawias kwadratowy i zamknij nawias kwadratowy średnik.
Linia 23. dane otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości dane otwórz nawias kwadratowy indexMin zamknij nawias kwadratowy średnik.
Linia 24. dane otwórz nawias kwadratowy indexMin zamknij nawias kwadratowy znak równości temp średnik.
Linia 25. zamknij nawias klamrowy.
Linia 27. cout otwórz nawias ostrokątny otwórz nawias ostrokątny liczbaPorownan otwórz nawias ostrokątny otwórz nawias ostrokątny cudzysłów cudzysłów otwórz nawias ostrokątny otwórz nawias ostrokątny liczbaPrzestawien otwórz nawias ostrokątny otwórz nawias ostrokątny endl średnik.
Linia 28. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny rozmiarDanych średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 29. cout otwórz nawias ostrokątny otwórz nawias ostrokątny dane otwórz nawias kwadratowy i zamknij nawias kwadratowy otwórz nawias ostrokątny otwórz nawias ostrokątny cudzysłów cudzysłów średnik.
Linia 30. zamknij nawias klamrowy.
Linia 32. return 0 średnik.
Linia 33. zamknij nawias klamrowy.