Avatar billede baitianlong Nybegynder
30. oktober 2002 - 15:07 Der er 6 kommentarer og
1 løsning

Return array giver problemer

Opgaven går ud på at lave et nyt array, som indeholder procenterne som værdierne i det første array giver af den samlede sum !?!?!

Her er min metode

    public static double[] procent(int[] t){
       
        double arr[]= new double[t.length];
        int sum = 0;
        for(int i=0; i < t.length; i++){
            sum += t[i];
        }
        for(int j= 0; j < t.length; j++){
            arr[j] = t[j]/sum;
        }
        return arr;
       
    }


Og her er min testklasse:

int[] franz = {0, 15, 24, 345, 43, 3};
    System.out.println(procent(franz));   
    }

Men den returnerer dette:

[D@1ed1


Sært, ikke ?
Avatar billede di8leva Nybegynder
30. oktober 2002 - 15:09 #1
det er for att du skriver ut double[]:s toString() som er ut ungefær som du beskriver
Avatar billede di8leva Nybegynder
30. oktober 2002 - 15:09 #2
du måste gøra en string utværderingsfunktion som skriver ut varje værdi i arrayen med ex en for-sats elelr liknande
Avatar billede arne_v Ekspert
30. oktober 2002 - 15:10 #3
Ja.

Det er jo værdien af arrayet.

Du vil sikkert have værdien af arrayets elementer.

double[] franzpercent = procent(franz);
for(int i = 0; i < franzpercent.length; i++) {
  System.out.println(franzercent[i]);
}
Avatar billede di8leva Nybegynder
30. oktober 2002 - 15:11 #4
I stedet for:
System.out.println(procent(franz));   

skriver du
double[] arr = procent(franz);
String s = "";
for(int i = 0; i < arr.length; i++)
  s += "" + arr[i];
System.out.println(s);
Avatar billede baitianlong Nybegynder
30. oktober 2002 - 15:17 #5
Den skriver nu bare  0.0    0.0    0.0    0.0    0.0

Det er da mærkeligt ?
Avatar billede baitianlong Nybegynder
30. oktober 2002 - 15:24 #6
Har fundet ud af at

arr[j] = t[j]/(sum+0.0);

løser problemet (o;

Tak for hjælpen
Avatar billede arne_v Ekspert
30. oktober 2002 - 15:30 #7
Jeg ville nok have erklæret sum til at være double i.s.f., men
det er smag og behag.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester