2016-03-28 6 views
-1

Das ist meine Aufgabe, die ich zu tun habe:Methoden: Pyramid Volume

Definieren Sie eine Methode pyramidVolume mit Doppel Parameter Basislänge, Basisbreite und pyramidHeight, die mit einer rechteckigen Basis als dem doppelten Volumen einer Pyramide zurückgibt.

Hier ist mein Code:

import java.util.Scanner; 

public class CalcPyramidVolume { 

public static void pyramidVolume (double baseLength, double baseWidth, double pyramidHeight) { 
    baseLength = 1.0; 
    baseWidth = 1.0; 
    pyramidHeight = 1.0; 

    double pyramidVolume = ((baseLength * baseWidth) * pyramidHeight)/3; 
} 

public static void main (String [] args) { 
    System.out.println("Volume for 1.0, 1.0, 1.0 is: " + pyramidVolume(1.0, 1.0, 1.0)); 
    return; 
} 
} 

Ich kann nur den Abschnitt des Codes bearbeiten, wo ich den pyramidVolume Methodenaufruf erstellt. Ich bekomme einen Fehler, der besagt, dass der 'void' Typ hier nicht erlaubt ist und dass er auf die system.out Zeile zeigt, die ich nicht bearbeiten kann. Ich bin sehr verwirrt darüber, warum es mir in dieser Zeile einen Fehler gibt.

+2

Vielleicht veran 'pyramidVolume()' 'zurückzukehren double', nicht' void'? – trashgod

+2

Ihre Methode pyramidVolume() gibt void zurück, was das Problem verursacht hat. – dragon66

+2

Ändern Sie in 'public static double pyramidVolume (-)' und 'return pyramidVolume'. – Satya

Antwort

1

pyramidVolume Rückgabetyp ist void. Ändern Rückgabetyp double wie folgt:

public static double pyramidVolume (double baseLength, double baseWidth, double pyramidHeight) { 

    double pyramidVolume = ((baseLength * baseWidth) * pyramidHeight)/3; 
    return pyramidVolume; 
} 
+0

Vielen Dank! Außerdem fühle ich mich sehr dumm, das zu fragen, aber würde diese Volumenformel funktionieren? weil es einen Test besteht, aber den anderen nicht besteht, was mich denken lässt, dass es die Formel ist? – java2019

+0

Formel sieht korrekt aus. Was sind die Testeingaben? – Sanj

+0

Aus irgendeinem Grund werden die Testeingänge nicht angezeigt. Der erste Test wurde bestanden, weil der erwartete Wert 0,33333333333 war und das ist, was ich bekommen habe. Der zweite Test hatte jedoch einen Erwartungswert von 46.39999999 und ich bekam wieder 0,33333333. Aber es zeigt keine Test-Eingänge, die seltsam ist – java2019