Witam wszystkich,
Dopiero zaczęłam moją przygodę z programowaniem w Javie. Mój kierunek studiów wymaga znajomości Javy, więc przykładam się do nauki jak mogę :) No, ale przejdźmy do rzeczy. Moim zadaniem domowym było napisanie programu, który ma dwa argumenty (użytkownik wpisuje je klikając w nazwę projektu-->properties-->run-->arguments). Wpisywanie z klawiatury jeszcze przede mną :) Później program miał wyliczyć sumę postaci 3i^2 dla i={1,2,3,...,n}. Na końcu miałam zabezpieczyć program przed źle wprowadzonymi wartościami za pomocą try/catch. Oto mój cały kod:
package zadanie1;
public class Obliczenia {
public static void main(String[] args) {
int n;
int m;
int suma = 0;
try {
n = Integer.parseInt(args[0]);
m = Integer.parseInt(args[1]);
} catch (NumberFormatException e) {
System.out.println("Podaj dwie liczby całkowite");
}
for (int i = 1; i <= n; i++) {
suma += 3 * i * i;
}
System.out.println("Suma takiej postaci wynosi " + suma);
// TODO code application logic here
}
}
Kiedy wpisuję dwie liczby, np 3 i 8, i uruchamiam program to wyświetla mi się na czerwono coś takiego:
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - variable n might not have been initialized
at zadanie1.Obliczenia.main(Obliczenia.java:23)
Java Result: 1
Kiedy wpisuję błędne dane (cyfrę i literę) to wyskakuje to:
Podaj dwie liczby całkowite
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - variable n might not have been initialized
at zadanie1.Obliczenia.main(Obliczenia.java:23)
Java Result: 1
Co mam zrobić żeby program mi działał? Dodam, że przed napisaniem try/catch wszystko było ok.