zad3, tablice dwumiarowe

zad3, tablice dwumiarowe
SA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

Na razie będzie to moje ostatnie zadanie, mogę prosić w w skazówki, takie żebym je jak najszybciej rozwiązał, tak do soboty, przepraszam że nie pisze w czym konkretnie chciałbym pomoc otrzymać od was , szczerze robię to na wyrost, bo nie wiem czy się wyrobie.

Zbuduj
klasę
Wektor,
która
umożliwi
wykonywanie
prostych
operacji
arytmetycznych od razu na całych wektorach liczb rzeczywistych. Nowe wektory mają być
utworzone z tablic liczb rzeczywistych typu podwójnej precyzji, a ich inicjalizacja ma się
odbywać w konstruktorze przeciążonym. Operacje: „+”, „-” mają stanowić odpowiednio
metody: add, sub tej klasy.
Klasa dla nowotworzonych instancji powinna zapewniać:

  1. Łańcuchowe wykonywanie operacji, np. wektor1.add(wektor2).add(wektor3)
  2. Niezmienność bazowej tablicy double[], z której tworzony jest obiekt klasy Wektor
  3. Niezmienność wektorów biorących udział w operacji
  4. Możliwość wyświetlania obiektów tej klasy, przy pomocy metody:
    void opis(Wektor)
    Następnie utwórz klasę testującą, tak aby można było pokazać:
  5. Przykładowe działanie wszystkich operacji,
  6. Niezmienność wektorów biorących udział w operacji
  7. Niezmienność tablic inicjalizacyjnych, z których wektory zostały utworzone
FA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 16
0

Ładna godzina na rozwiązywanie zadań saltcushy ;p

Co za problem utworzyć takie klasy ?

Kopiuj
public class Wektor{

 private double [] tablica;

  public Wektor(double [] tab) {
     tablica=tab;
 }

 public Wektor add(Wektor w){
    double [] [] wynik=new double[w.length][w.length];
    // kod na dodawanie macierzy (2 pętle for), dodawania można zapisać w powy ższej zmiennej

   return new Wektor(wynik);
}




}
 
KK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 135
0

A gdzie Wy w wektorach macie dwa wymiary?? Wektor jest jednowymiarowy!

No po na początek masz:

Kopiuj
class Wektor{
    private final double[] dane;
    public Wektor(double dane){
        this.dane=dane;
    }

    public static void opis(Wektor wektor){
        //jakieś fajne drukowanie w pętli wszystkich elementów wektora otrzymanego jako parametr (!!!)
    }

    public Wektor add(Wektor dodawany){
        Wektor nowy = null;
        if (getDane().length==dodawany.getDane.length){
            double[] noweDane = double[getDane().length]; 
            //pętla for, która do odpowiedniego pola noweDane wpisuje sumę z getDane() i dodawany.getDane().
            nowy = new Wektor(noweDane);
        } else {
            //według uznania - możesz puste miejsca uznać za 0, pokazać komunikat o błędzie i wtedy zwróci się null lub zwrócić np. this - jak sobie chcesz.
        }
        return nowy;
    }

    public Wektor sub(Wektor odejmowany){
        //jw.
    }

    public getDane(){
        return dane;
    }
}
FA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 16
0
kaskader_kl napisał(a):

A gdzie Wy w wektorach macie dwa wymiary?? Wektor jest jednowymiarowy!

Kopiuj


Sorry, pomyliło mi się z macierzami ;p

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.