Witam serdecznie,
chcę napisać program, który pobiera z pliku dwie liczby całkowite rozdzielone białymi znakami (pierwsza to wielkość pakietu danych w bajtach a druga wolna przestrzeń dyskowa w megabajtach). W kolejnych wierszach ma wypisać:
- ile pakietów danych się zmieści na dysku,
- numer pakietu i jego wielkość (jeśli pakiet mieści się na dysku),
- całkowity zajęty rozmiar.
Pakiety od drugiego do piątego są dwa razy większe niż pakiet poprzedni, a od pakietu szóstego - trzy razy; w przypadku błędu program wypisuje ***
Metodą prób i błędów posuwam się do przodu jednak teraz utknąłem:) Dane z pliku ładuję, objętość pierwszego pakietu to moja zmienna start, objętość dysku to moja zmienna dysk.
Problemy mam trzy - wszystkie dot. wklejonego fragmentu kodu:
https://4programmers.net/Pastebin/5548
- Jak zwiększyć mnożnik od szóstego pakietu? Poprzez if zagnieżdżone w for? Czy może nie tędy droga?
- Jak określić kończący warunek dla i skoro jego wartość znam dopiero później (jak już widzę poprzez break ile pakietów weszło)? Póki co wpisałem sztucznie 1000.
- Analogicznie jak w pierwszej linii komunikatu wyjściowego podać liczbę i (pakietów) skoro wiem to dopiero na końcu?
Zdaję sobie sprawę, że ten kod można napisać na wiele sposobów o wiele lepiej/sprawniej/prościej.
Jestem jednak dopiero na początku swojej przygody z Javą i dlatego proszę zarówno o wyrozumiałość jak i wskazówki w zakresie moich pytań.
Dziękuję i pozdrawiam,
Arek