• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Sortowanie bąbelkowe liczb w pliku txt

Object Storage Arubacloud
0 głosów
821 wizyt
pytanie zadane 27 lutego 2019 w Java przez mswol Nowicjusz (120 p.)

Witajcie,

to moje początki na studiach informatycznych i idzie bardzo topornie więc proszę o gro wyrozumiałości.
Treść zadania na zaliczenie wygląda tak - " Posortuj liczby w plikach w następującej kolejności. Wpierw posortowane zostaną niemalejąco liczby parzyste, następnie nierosnąco liczby nieparzyste. ".
No więc zacząłem od próby wczytania pliku. Przewertowałem już sporo wątków i kursów, niestety, albo jestem na to za głupi, albo brakuje mi czegoś(dobre pytanie, czego? - odpowiedź pt"szarych komórek" zostanie przyjęta dopiero po uwaleniu algorytmiki) do zrozumienia w jaki sposób to zrobić.
Dotychczas niewiele udało mi się napisać, próbowałem zacząć to pisać sortowaniem bąbelkowym -
"

package javaapplication6;
import java.io.FileNotFoundException;
import java.io.File;
import java.util.Scanner;
/**
 *
 * @author Maciek
 */
public class JavaApplication6 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args)throws FileNotFoundException {
        
        Scanner odczyt = new Scanner(new File("c://sortowanie_1.txt"));
        File file = new File("c://sortowanie_1.txt");
        Scanner in = new Scanner(file);}
        
       private static void b_sort(int tab[]){
        int temp;
        int zmiana = 1;
           while (zmiana > 0){
               zmiana = 0 ;
      for(int i = 0; i<tab.length - 1; i++){    
          if(tab[i]>tab[i+1]){
              
              temp = tab [i+1];
              tab [i+1] = tab [i];
          tab [i] = temp;
          zmiana ++;
          }
      }
           }
           for(int i = 0; i<tab.length; i++){
           System.out.println(tab[i]+"");"

 

 

Posiłkowałem się witryną algorytm.org. Proszę, spróbujcie mnie nakierować krok po kroku w jaki sposób, z pomocą jakich źródeł mam to zrobić i jeszcze do tego się czegoś nauczyć.
  Druga część zadania brzmi " Sprawdź czy wartość bezwzględna sumy liczb ujemnych jest większa, mniejsza czy równa sumie liczb dodatnich. " ale do tego jeszcze kawał drogi.

 

 

Treść pliku - "76 3 69 -26 -54 -79 -88 -72 43 -23 -95 66 44 12 -11 81 -17 -97 -91 -70 32 -17 53 -9 21 35 -77 -80 97 -80 -82 -2 -19 -40 -87 40 69 51 -55 61 -7 67 83 86 -59 -34 -27 13 -66 -80 7 0 95 38 96 -20 -7 93 75 -45 -80 -20 -67 -13 57 96 -2 69 36 10 -13 -89 -4 -51 -26 32 47 -28 31 32 61 65 -45 -37 82 42 40 -38 78 -40 -22 4 -33 10 -69 -62 -28 -85 -41 -91 61 -84 11 92 -19 8 -5 16 -25 97 -98 91 78 -61 -100 -56 -4 -28 -70 -33 -76 16 44 -56 -56 38 -3 -89 93 -86 45 -43 -84 -3 -87 53 -59 18 -19 81 -74 -85 32 -29 -35 -51 10 1 -4 91 -78 70 66 32 -77 -4 -71 -31 -53 24 28 -13 -65 -59 -49 -42 -79 85 -71 -60 -17 28 66 74 2 -88 -16 71 63 -60 11 -47 90 -13 100 -34 70 -63 -35 10 -81 26 72 19 -91 -61 85 0 -33 -62 79 -59 65 -2 -77 -63 100 -15 53 94 54 -85 -53 15 40 80 84 -22 -28 72 80 69 -44 -89 -25 92 86 -22 -2 25 -95 -8 -5 -30 -78 71 5 -54 -69 -92 -41 0 10 19 61 17 75 -39 -46 22 -79 52 56 -73 34 -69 -38 82 -8 21 -58 26 -91 73 -61 -29 59 72 -29 40 35 54 -32 -50 -41 88 -2 -1 36 73 -85 35 41 80 42 78 33 -38 -66 54 -30 "

 

 

Pozdrawiam i liczę na Waszą pomoc,
mswol.

1 odpowiedź

0 głosów
odpowiedź 27 lutego 2019 przez miro Pasjonat (23,870 p.)
edycja 27 lutego 2019 przez miro
Chyba musisz mieć dwa zbiory, liczby parzyste i nieparzyste. Rozbij sobie to na podzadania i rób po kolei. Jak nie wiesz jak się do takich zadań zabrać to zamiast programować, wytłumacz jak do dziecka co byś zrobił mając ciąg liczb, aby pojawił się oczekiwany wynik. Na serio te zadanie każdy powinien rozwiązać jakby się chwilę zastanowił. Najlepiej jakby miał jeszcze jakąś materialną reprezentację tych liczb.
- zaczytujesz liczy do dwóch tablic z parzystymi i nieparzystymi liczbami
- jedną tablicę sortujesz malejąco, drugą rosnąco

Druga część też jest podobna. Sprawdzasz czy liczba jest dodatnia, jak tak to sumujesz do jednej wartości, w przeciwnym wypadku sumujesz do drugiej. Z sumy liczb ujemnych wyciągasz wartość bezwzględną i porównujesz z sumą liczb dodatnich.
komentarz 28 lutego 2019 przez mswol Nowicjusz (120 p.)
teoretycznie pojmuję co trzeba zrobić, problemem dla mnie jest przełożenie tego na kod. Bardzo bym prosił jakieś źródła, które by mi pomogły to wykonać albo przykładowy kod z komentarzami, abym mógł to zrobić.
komentarz 28 lutego 2019 przez miro Pasjonat (23,870 p.)
Przecież znalazłeś kod do sortowania. Teraz tylko znajdź jak sczytać wartości z pliku. Jak działać na ifach, pętlach i tablicy już pewnie umiesz.

Podobne pytania

0 głosów
1 odpowiedź 826 wizyt
pytanie zadane 24 marca 2021 w C i C++ przez jan1 Nowicjusz (220 p.)
0 głosów
1 odpowiedź 353 wizyt
pytanie zadane 30 lipca 2020 w Java przez lucyliu Początkujący (370 p.)
0 głosów
1 odpowiedź 3,188 wizyt
pytanie zadane 14 maja 2016 w C i C++ przez Evelek Nałogowiec (28,960 p.)

92,555 zapytań

141,404 odpowiedzi

319,559 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...