Praca domowa z Javy - help :(

Praca domowa z Javy - help :(
EG
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:4
0

Zacznę od tego, że jestem całkowicie zielona temacie. Javę mam na studiach podyplomowych i muszę oddać pracę domową. Niestety po jednych zajęciach mam jeszcze duży mętlik w głowie i nie potrafię tego programiku sama napisać.

Program ma zawierać 3 zmienne: imię, nazwisko, wiek. Po uruchomieniu na ekranie ma pojawić się tekst:

Witaj chłopaku/dziewczyno
Masz ma imię: Ewelina
Nazywasz się: Tajemnica
Za 5 lat skończysz: 34

Jest jeszcze jeden haczyk. Program ma prawidłowo wypisywać imię i nazwisko, tzn.pierwsza litera duża reszta małe. Tutaj prowadzący kazał wykorzystać to char i upper i lower.

Napisałam już trochę tego kodu:

Kopiuj
public class PracaDomowa {
     public static void main(String[] args) {
         
         String imie = args[0];
         String nazwisko = args[1];
         String wiek = args[2];

         char znak = imie.charAt(imie.length()-1);
         
         if (znak == 'a')
            System.out.println("Witaj dziewczyno");
        else
            System.out.println("Witaj chłopaku");
         
         System.out.println("Masz na imie: "+ imie);
         System.out.println("Masz na nazwisko: "+ nazwisko);
          
         int liczba = Integer.parseInt(wiek);
   
         System.out.println("Za 5 lat skończysz: "+ liczba + 5);

Nie wiem jak sobie poradzić z tym wiekiem. Na razie program wyrzuca mi 295 lat.....a nie oblicza poprawnie....

Nie mam pojęcia jak pozmieniać te wielkości liter.

Czy ktoś jest mi w stanie z tym pomóc?

Byłabym niezmiernie wdzięczna za jakąkolwiek pomoc.

Ewelina

0
Kopiuj
   System.out.println("Za 5 lat skończysz: "+ liczba + 5);

'' Na razie program wyrzuca mi 295 lat.....a nie oblicza poprawnie....'''

0

W skrócie - dlatego, że zamienia wiek i 5 na Stringa i dokonuje konkatenacji "29" + "5" = "295"
Umieść działanie w nawiasach

Kopiuj
   System.out.println("Za 5 lat skończysz: "+ (liczba + 5));
EG
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:4
0

Super! Zadziałało. Wielkie Dzięki. Ale jak sobie poradzić z zamianą liter: Pierwsza wielka i reszta małe w imieniu i nazwisku?

ShookTea
  • Rejestracja:ponad 12 lat
  • Ostatnio:prawie 6 lat
  • Lokalizacja:Wrocław
  • Postów:629
0

Gotowiec:

Kopiuj
String output = input.substring(0, 1).toUpperCase() + input.substring(1);

Tylko musisz zrobić zabezpieczenia idiotoodporne, bo wywali wyjątek, jeżeli ktoś poda puste imię/nazwisko.


EG
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:4
0

Kurczę coś mi nie chce tego kodu załapać....czy jest istotne, w którym miejscu to wkleję? Wyrzuca mi komunikat "cannot find symbol. Symbol variable input."

matt_z
  • Rejestracja:około 8 lat
  • Ostatnio:ponad 7 lat
  • Postów:56
0

Tak. Ma znaczenie. Co gorsza musisz trochę pozmieniać powyższy gotowiec.

Możesz zdradzić, co to za studia?


edytowany 1x, ostatnio: matt_z
EG
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:4
0

To geoinformacja. Nie miałam nigdy nic wspólnego z informatyką i nie spodziewałam się, że będą nas uczyć Javy albo Pythona....ale muszę teraz przez to przebrnąć.

K9
na jakiej uczelni geoinformacja? pytam bo też studiuję
EG
Na Uniwersytecie Łódzkim, a Ty?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.