JAVA trapez - mały problem

0

Witam. mam za zadanie stworzyć trapez. wszystko się kompiluje, natomiast brakuje jakby "odpowiedzi zwrotnej", czyli wyświetlenia wyników. w czym tkwi problem?

(P.S. Jeśli byłyby jakieś rażące błędy czy rzeczy, które sa całkiem niepotrzebne, to proszę o krytyczne uwagixD)

 
public class Trapez{

	Trapez(double x, double y) {
		Punkt p1 = new Punkt (8,10);
		Punkt p2 = new Punkt (1,6);
		Punkt p3 = new Punkt (7,4);
		Punkt p4 = new Punkt (1,8);
			}
	
boolean czyTrapez ()
{ 	
	double y1 = 1;
double y2 = 4;
double y3 = 8;
double y4 = 2;
double x1 = 5;
double x2 = 2;
double x3 = 8;
double x4 = 4;
	
	 
{return ((y2-y1)/(x2-x1)==((y3-y4)/x3-x4)) || ((y1-y4)/(x1-x4)==((y2-y3)/(x2-x3))) && ! false; 

;}

}


double polePowierzchni ()
{
	double h1 = 0;
	double h2 = 0;
	double y1 = 0;
	double y2 = 0;
	double y3 = 0;
	double y4 = 0;
	double x1 = 0;
	double x2 = 0;
	double x3 = 0;
	double x4 = 0;
	double wynik;
	

	
	if (((y2-y1)/(x2-x1))==((y3-y4)/x3-x4)) 
	{ return (((Math.sqrt((x2-x1)+ Math.pow((y2-y1),2)+ Math.sqrt(Math.pow((x4-x3),2))+ Math.pow(y4-y3, x4)))*h1*(1/2)));
	}
	
	else {wynik=(((Math.sqrt(Math.pow((x4-x1),2)+ Math.pow((y4-y1), 2))+ Math.sqrt(Math.pow((x2-x3), 2))+ Math.pow((y2-y3), 2))*h2*(1/2))
	); 
	}
	return wynik;
			
	}
	

public int odleglosc(Punkt pkt) {
	for ( int wynik= (int) Math.sqrt((Math.pow((x-pkt.x),2) + Math.pow((y-pkt.y),2)));; )
		return (int) Math.sqrt(wynik);
			}
double obwod () {

	double wynik;
	
	for (wynik = (super.Odleglosc(null)+ Odleglosc (null)+ super.Odleglosc(null)+ super.Odleglosc(null));;) 
	{
	return wynik;
	}
	
}

double dlugoscPrzekatnej1 () {
	double y1 = 0;
	double y2 = 0;
	double y3 = 0;
	double y4 = 0;
	double x1 = 0;
	double x2 = 0;
	double x3 = 0;
	double x4 = 0;
	double wynik1=0;
	
	for (wynik1= odleglosc(null);;) 
	{
		return wynik1;
	}
	
	}
	
	double dlugoscPrzekatnej2 () {
		double x2 = 2;
		double y2 = 8;
		double wynik2;
		
		
		for (wynik2= odleglosc (null);;)
				{return wynik2;
		
	}
	
		
	
}
	public void main (String[] args) {
		 System.out.println("czy jest trapezem" +czyTrapez ());	 
		 System.out.println("Pole powierzchni tego trapezu" + polePowierzchni ());
		 System.out.println("Obwod tego trapezu wynosi" + obwod ());
		 System.out.println("Dlugosc przekatnej"+ dlugoscPrzekatnej1() + "Dlugosc drugiej przekatnej" + DlugoscPrzekatnej2 ());
		
	 }
	 }

0

Pokaż co ci wypisał program na konsoli, jakoś ciężko mi uwierzyć, że się kompiluje. No i nie ma static przy main.

0
Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
	Cannot make a static reference to the non-static method czyTrapez() from the type Trapez
	Cannot make a static reference to the non-static method polePowierzchni() from the type Trapez
	Cannot make a static reference to the non-static method obwod() from the type Trapez
	Cannot make a static reference to the non-static method dlugoscPrzekatnej1() from the type Trapez
	Cannot make a static reference to the non-static method dlugoscPrzekatnej2() from the type Trapez

	at Trapez.main(Trapez.java:102)

to się pojawia, gdy dodaję static.

gdy nie ma static, nie pojawia się żaden komentarz.

2

W main musisz utowrzyć sobie obiekt Trapez, np.
Trapez trapez=new Trapez();
a potem te metody wywoływać na tym obiekcie:
System.out.println("czy jest trapezem" +trapez.czyTrapez ());

1

Nie licząc tego, tu jest jeszcze milion innych błędów, które nie pozwolą się temu skompilować.

0

Czy możesz mi wytłumaczyć co miałeś na myśli pisząc poniższy kod?
Przy okazji - jesteś bardzo kreatywny. Nigdy jeszcze nie widziałem tak złego kodu.

double wynik;
       
for (wynik = (super.Odleglosc(null)+ Odleglosc (null)+ super.Odleglosc(null)+ super.Odleglosc(null));;)
{
return wynik;
}
0

chodzi o stworzenie trapezu, punkt pierwszy: sprawdzenie, czy trapez może istnieć, poza tym policzenie obwodu, pola oraz długości przekątnej.

co do kodu, cóż - metoda prób i błędów.. niestety dość szybko idziemy z materiałem, ja natomiast staram się nadrabiać zaległości, co jest dosyć trudne.

1 użytkowników online, w tym zalogowanych: 0, gości: 1