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

Prosty program - opinia/ocena

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
0 głosów
183 wizyt
pytanie zadane 25 października 2016 w Java przez Destiny Użytkownik (500 p.)

Witam serdecznie. Od niedawna bawię się trochę w programowanie w Javie. Ogarnąłem trochę podstawy podstaw i postanowiłem napisać program, który ułatwi mi życie, bo o to właśnie chodzi w programowaniu. Więc program oblicza mi ile przejadę kilometrów samochodem jeśli zatankuję za określoną kwotę.

Co o tym myślicie czy zrobilibyście to jakoś inaczej?

 

package com.company;

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {

      double paliwo;
      double cena_paliwa;
      double litr_paliwa;


        System.out.println("Ile litrów paliwa pali twój samochód na 100km:");
        Scanner sc = new Scanner(System.in);
        paliwo = sc.nextDouble();

        System.out.println("Za ile zatankowałeś: ");
        cena_paliwa = sc.nextDouble();

        System.out.println("Cena paliwa za 1 litr: ");
        litr_paliwa = sc.nextDouble();
        java.text.DecimalFormat df=new java.text.DecimalFormat("0.00");
        double suma = cena_paliwa/litr_paliwa;
        System.out.println("Zatankowałeś " + (df.format(suma)) + " litrów paliwa");

        double jeden_litr = 100/paliwo;
        double ile_przejade = jeden_litr*suma;


        System.out.println("Pozwoli ci to przejechać " + (df.format(ile_przejade)) +" kilometrów");


    }
}

 

1 odpowiedź

+1 głos
odpowiedź 25 października 2016 przez MichuDev Pasjonat (20,300 p.)
  • Ja możesz coś zaimportować to to robisz (jeśli używasz dwóch klas o tej samej nazwie, które są w innych pakietach np. java.util.List, java.awt.List).
  • Postaraj się pisać zmienne w języku angielskim.
  • Twój kod jest słabo skalowalny. Mógłbyś pewne obliczenia dać do pewnych klas lub ewentualnie statycznych metod w  klasie Main.
  • Może znaki białe w języku Java nic nie zmieniają to nie powinno się przesadzać z ich używaniem. Warto robić w tym samym bloku kodu  jednolite wcięcia, i nie robić takich odstępów między instrukcjami (bez sensu entery, w metodzie main.
  • Inicjalizuj wartości zmiennych / twórz obiekty wtedy gdy to potrzebne. Nie podoba mi się ta niekonsekwencja - najpierw rezerwujesz 3 zmienne, potem je przypisujesz, a następnie w innych zmiennych od początku ich istnienia przypisujesz im wartości.
  • Myślę, że to wystarczy, może nawet przesadzam ;) Szczególnie jak to tylko 35 linii!
komentarz 26 października 2016 przez MichuDev Pasjonat (20,300 p.)
@edit:

Sprawdzaj poprawność danych. np. sprawdź czy cena paliwa za litr jest > 0, ponieważ nie wyjdzie dobry wynik. To samo z ilością litrów! Pamiętaj by dane wejściowe (od użytkownika) zawsze sprawdzać pod kątem poprawności.

Masz pytania? pisz!

Dodanie "Najlepsza odpowiedź", bardzo pomaga motywując do tego, by pisać jak najlepsze odpowiedzi.

Podobne pytania

0 głosów
0 odpowiedzi 674 wizyt
pytanie zadane 26 czerwca 2021 w Java przez Uczen12345 Obywatel (1,800 p.)
0 głosów
0 odpowiedzi 217 wizyt
0 głosów
3 odpowiedzi 1,208 wizyt

93,444 zapytań

142,436 odpowiedzi

322,698 komentarzy

62,806 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

...