Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- PunktMaterialny.java
- public class PunktMaterialny {
- private double masa; //Prywatne pole
- private double x;
- private double y;
- private double z;
- public PunktMaterialny() {masa=1.0;} //konstruktor domyślny
- public PunktMaterialny(double a) //konstruktor z parametrem
- {if (a>0) {masa=a;} else {masa=1.0;}
- }
- public double Get_masa() {return masa;}
- public void Set_masa(double a) {if(a>0) {masa=a;}else {masa=1.0;}} //akcesor
- public double MomentGlowny() {return 0.0;} //metoda zwracajaca moment glowny
- public double MomentSteinera(double r) {return MomentGlowny() + masa*r*r;} //metoda obliczajaca moment z tw. Steinera
- public void Opis(double r) {System.out.print("Masa punktu materialnego: "+masa+" Moment Glowny: "+MomentGlowny()+" Moment z Tw. Steinera: "+MomentSteinera(r));}
- //metoda zwracajaca opis punktu
- /*public PunktMaterialny(double a,double b, double c,double d)
- {if (a>0) {masa=a;} else {masa=1.0;};
- b=x;
- c=y;
- d=z;
- }*/
- public double Get_X(){return x;}
- public double Get_Y(){return y;}
- public double Get_Z(){return z;}
- public void Set_X(double a) {x=a;}
- public void Set_Y(double b) {y=b;}
- public void Set_Z(double c) {z=c;}
- public double Moment_X() {return masa*(y*y+z*z);}
- public double Moment_Y() {return masa*(x*x+z*z);}
- public double Moment_Z() {return masa*(y*y+x*x);}
- public double MomentSt_X(double a, double b) {return masa*((y-a)*(y-a)+(z-b)*(z-b));}
- public double MomentSt_Y(double a, double b) {return masa*((x-a)*(x-a)+(z-b)*(z-b));}
- public double MomentSt_Z(double a, double b) {return masa*((y-a)*(y-a)+(x-b)*(x-b));}
- public String toString() {return "Punkt Materialny";}
- }
- ProgramTestowy.java
- public class ProgramTestowy {
- public static void main(String[] args) {
- PunktMaterialny p1 = new PunktMaterialny(4.0); //obiekt powstaly przy uzyciu konstruktora z parametrem
- PunktMaterialny p2 = new PunktMaterialny(); //obiekt powstaly przy uzyciu konstruktora domyslnego
- p1.Opis(2.0);
- System.out.print("\n");
- p2.Opis(2.0);
- System.out.print("\n");
- System.out.print("\n");
- p1.Set_masa(4.0); //zmiana masy przy uzyciu akcesora
- p1.Opis(2.0);
- System.out.print("\n");
- PunktMaterialny[] punkty= new PunktMaterialny[5]; //tablica obiektow
- for(int i=0; i<5;i++) {
- punkty[i]=new PunktMaterialny(2*i); //inicjalizacja przu uzyciu petli
- punkty[i].Opis(2.0);
- System.out.print("\n");
- System.out.print("\n");
- System.out.print("\n");}
- BrylaSztywna A = new BrylaSztywna(3);
- A.P[0].Set_X(2.0);
- A.P[0].Set_Y(5.0);
- A.P[0].Set_Z(6.0);
- A.P[0].Set_masa(2.0);
- A.P[1].Set_X(1);
- A.P[1].Set_Y(2);
- A.P[1].Set_Z(5);
- A.P[1].Set_masa(3);
- A.P[2].Set_X(7);
- A.P[2].Set_Y(2);
- A.P[2].Set_Z(2);
- A.P[2].Set_masa(2);
- System.out.println("Wspolrzedne srodka masy to: "+A.Srodek_X()+" ; "+A.Srodek_Y()+" ; "+A.Srodek_Z());
- }}
- BrylaSztywna.java
- public class BrylaSztywna {
- private int LiczbaPunktow;
- PunktMaterialny[] P;
- public BrylaSztywna(int a)
- {if(a>1) {LiczbaPunktow=a;}else {LiczbaPunktow=2;
- //System.out.print("Przyjeto 2");
- P=new PunktMaterialny[LiczbaPunktow];
- for(int i=0;i<LiczbaPunktow;i++) {
- P[i]=new PunktMaterialny();}
- }}
- //PunktMaterialny[] punkty= new PunktMaterialny[LiczbaPunktow];
- //public int Liczba_Punktow(){return LiczbaPunktow;}
- double Srodek_X() {
- double masa=0.0;
- double wspol=0.0;
- for(int i=0;i<LiczbaPunktow;i++)
- { wspol+=P[i].Get_masa()*P[i].Get_X();
- masa+=P[i].Get_masa();
- }
- return wspol/masa;
- }
- double Srodek_Y() {
- double masa=0.0;
- double wspol=0.0;
- for(int i=0;i<LiczbaPunktow;i++)
- { wspol+=P[i].Get_masa()*P[i].Get_Y();
- masa+=P[i].Get_masa();
- }
- return wspol/masa;
- }
- double Srodek_Z() {
- double masa=0.0;
- double wspol=0.0;
- for(int i=0;i<LiczbaPunktow;i++)
- { wspol+=P[i].Get_masa()*P[i].Get_Z();
- masa+=P[i].Get_masa();
- }
- return wspol/masa;
- }
- double Moment_X() {
- double moment=0.0;
- for(int i=0;i<LiczbaPunktow;i++)
- {
- moment+=P[i].MomentSt_X(Srodek_Y(),Srodek_Z());
- }
- return moment;
- }
- double Moment_Y() {
- double moment=0.0;
- for(int i=0;i<LiczbaPunktow;i++)
- {
- moment+=P[i].MomentSt_Y(Srodek_X(),Srodek_Z());
- }
- return moment;
- }
- double Moment_Z() {
- double moment=0.0;
- for(int i=0;i<LiczbaPunktow;i++)
- {
- moment+=P[i].MomentSt_Z(Srodek_X(),Srodek_Y());
- }
- return moment;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement