Sortowanie przy użyciu If

0

Witam,
dostałem takie zadanie, lecz niestety nie wiem jak je wykonać, proszę o jakieś wskazówki.

Napisz program, który prosi użytkownika o podanie 5-ciu liczb ( z tym nie ma problemu ), następnie wyświetl największą podaną przez użytkownika liczbę korzystając z pętli If/If Else.

Podane przez użytkownika liczby posortuj i wyświetl je od najmniejszej do największej korzystając wyłącznie z peli If/If Else.
( max 10 pętli )

Chodzi tutaj o porównanie liczb oraz o zmienienie jej pozycji ( coś jak sortowanie bąbelkowe ) - tylko nie mam pojęcia jak się za to zabrać.

0

korzystając wyłącznie z pętli If/If Else

Ja pie``rdolę, do gazu z takim nauczycielem informatyki! Wyklaruj mu, że if i else ni cholery nie ma nic wspólnego w pętlami! Zwykły blok warunkowy, instrukcja warunkowa - blok wykonuje się 1 raz jeśli określony warunek jest (nie)spełniony. Gdzie tutaj jakieś pętle?

0

PĘTLA if/else?Pierwsze słyszę,a programuję już ładnych parę lat...

Cóż,pomysł na wykonanie zadania trochę z d**y,ale jeśli koniecznie ma być if/elsem to zadanie 1 będzie wyglądać tak:
1.Tworzysz sobie tablicę 5 elementów do przechowywania liczby oraz 1 element temporary.
2.Po podaniu 5 liczb zapodajesz temporary=tablica[0];
3.Teraz robisz drabinkę ifów:

if(temporary<tablica[1]) temporary=tablica[1];
else if (temporary<tablica[2]) temporary=tablica2;
else

... itd aż załatwisz wszystkie
4.Ostatnie co ci pozostało to wyświetlić tego temporary;
Prawidłowo od strony projektowej takie rzeczy jak min/max robi się w ten sposób,że ma się zmienną min i max i na dzień dobry wpisuje do nich 1 podaną wartość,a potem na każdej następnej robi się if(max<justEntered) max=justEntered;

Co do zadania 2 to wykładowcy zapewne chodziło o algorytm w stylu:

if(tablica[0]<tablica[1]) zamień_wpisy_tablicy(0,1);

Ale tutaj weź się dopytaj o co chodzi,bo naprawdę o takich cudach jak PĘTLA if/else jak żyję to jeszcze nie słyszałem.

0

Podpowiedź: 7 elementów da się posortować w 5 porównaniach.

0

Podane przez użytkownika liczby posortuj i wyświetl je od najmniejszej do największej korzystając wyłącznie z peli If/If Else.

Sortowanie przez if'y? [rotfl]

0

Wybaczcie - źle to opisałem - mój błąd.
Treść zadania:
• Write a program that asks the user to input five different integers. Using 'if' statements work out which is the maximum of the five numbers and display it. You will need several 'if' statements to do this exercise.

• Write another program that asks the user to input five different integers. Using 'if' or 'if-else' statements only, display the numbers in increasing order. E.g. user inputs: 5, 2, 11, 1, 4. Then the program outputs: 1, 2, 4, 5, 11
This exercise is very difficult but you have already reached the first class stage for this lab sheet so challenges here are supposed to be very tough. You will gain experience just by thinking about this exercise.
Possible approach: Compare the 2nd, 3rd, 4th and 5th values in turn with the 1st value. If any value is less than the 1st value then swap it with the first value. Think carefully how to swap two variables. Now do the same comparing/swapping with values 3,4 & 5 against value 2. Then compare/swap 4, 5 against 3, then finally 5 against 4. There's a pattern there. Ten 'if' statements in total. Good luck!

0

No to do zadania 1 podałem ci rozwiązanie.
Co do 2,to w opisie masz gotowy algorytm,jedyne co ci będzie jeszcze trzeba wiedzieć to jak zamienić wartości z 2 komórek tablicy.Zakładając,że jest to indeks 0 i 1:

zmienna_tymczasowa=tablica[0];
tablica[0]=tablica[1];
tablica[1]=zmienna_tymczasowa;

1 użytkowników online, w tym zalogowanych: 0, gości: 1