Witam,
Od razu piszę, że dopiero niedawno rozpocząłem naukę programowania (więc prosiłbym o zachowanie powagi i nie śmianie się ;)). Chciałem napisać program, który sprawdza czy dany trójkąt o bokach a, b, c(wartości wprowadzone przez użytkownika) jest trójkątem prostokątnym. Napisałem kod, który się kompiluje, ale jego metoda nie działa i nie bardzo wiem jaki jest tego powód. Z góry dziękuje za odp.
class trjCheck {
int a, b, c;
trjCheck(int bok1, int bok2, int bok3) {
bok1 = a;
bok2 = b;
bok3 = c;
}
/* Chciałbym aby metoda ta sprawdziła, który z wprowadzonych przez użytkownika boków jest najdłuższy a następnie wykonała odpowiednią instrukcje */
void spr() {
if(a>b & a>c) {
a = a*a;
if(a==c*c+b*b) {
System.out.println("Trójkąt jest prostokątny");
} else {
System.out.println("Trójkąt nie jest prostokątny");
}
}
else if(b>a & b>c) {
b = b*b;
if(b==c*c+a*a) {
System.out.println("Trójkąt jest prostokątny");
} else {
System.out.println("Trójkąt nie jest prostokątny");
}
}
else if(c>a & c>b) {
c = c*c;
if(c==a*a+b*b) {
System.out.println("Trójkąt jest prostokątny");
} else {
System.out.println("Trójkąt nie jest prostokątny");
}
}
}
}
A oto klasa testowe:
import java.util.Scanner;
class trjCheckTester {
public static void main(String[] args) {
Scanner choice1 = new Scanner(System.in);
Scanner choice2 = new Scanner(System.in);
Scanner choice3 = new Scanner(System.in);
int bokA, bokB, bokC;
System.out.print("\n Wprowadz wartosc boku a: ");
bokA = choice1.nextInt();
System.out.print("\n Wprowadz wartosc boku b: ");
bokB = choice2.nextInt();
System.out.print("\n Wprowadz wartosc boku c: ");
bokC = choice3.nextInt();
trjCheck user = new trjCheck(bokA, bokB, bokC);
user.spr();
}
}