Назначение идет, как говорится:Ошибка калькулятора ковра при вызове класса?
Проблема Уэстфилд ковровая компания попросила вас написать приложение, которое вычисляет стоимость коврового покрытия для прямоугольных комнат. Чтобы рассчитать цену, вы умножаете площадь пола (ширину длины) на цену за квадратный фут ковра. Например, площадь пола 12 футов в длину и 10 футов в ширину составляет 120 квадратных футов. Чтобы покрыть этот пол ковром, который стоит 8 долларов США за квадратный фут, будет стоить 960 долларов США (12x10x8 = 960).
Сначала вы должны создать класс с именем RoomDimension, который имеет два Feields: один для длины комнаты и один для ширины , Класс RoomDimension должен иметь метод, который возвращает область комнаты (площадь комнаты - это длина комнаты, умноженная на ширину комнаты).
Далее вы должны создать класс RoomCarpet с объектом RoomDimension в качестве поля. Он также должен иметь поле для стоимости ковра на квадратный фут. Класс RoomCarpet должен иметь метод, который возвращает общую стоимость ковра.
После того, как вы написали эти классы, используйте их в приложении, которое просит пользователя ввести размеры комнаты и цену за квадратный фут желаемого коврового покрытия. Приложение должно отображать общую стоимость ковра.
код у меня ниже не могу запустить из-за ошибки в 31-й строке MainProgram
import java.io.*;
import java.util.ArrayList;
import java.util.Scanner;
public class MainProgram {
public static void main(String[] args) {
final double CARPET_PRICE_PER_SQFT = 8.0;
// Create a Scanner object for keyboard input.
Scanner keyboard = new Scanner(System.in);
// Display intro.
System.out.println("This program will display the "
+ "carpet cost of a room." + "\nPlease enter the room's "
+ "dimension in feet.");
// Get the length of the room.
System.out.print("Enter the length of room: ");
double length = keyboard.nextDouble();
// Get the width of the room.
System.out.print("Enter the width of room: ");
double width = keyboard.nextDouble();
//close keyboard
keyboard.close();
****// Create RoomDimension and RoomCarpet objects.
CarpetCalculatorProgram calculatorProgram = new CarpetCalculatorProgram();
RoomDimension dimensions = calculatorProgram.new RoomDimension(length,
width);
RoomCarpet roomCarpet = calculatorProgram.new RoomCarpet(dimensions,
CARPET_PRICE_PER_SQFT);****
// Print the object calling the toString
System.out.println(roomCarpet);
}
}
Вот другие классы для кода:
номер Dimension
import java.io.*;
import java.util.ArrayList;
import java.util.Scanner;
public class RoomDimension {
private double length;
private double width;
public RoomDimension(double length, double width) {
super();
this.length = length;
this.width = width;
}
public double getLength() {
return length;
}
public double getWidth() {
return width;
}
public double getArea() {
return length * width;
}
@Override
public String toString() {
return "RoomDimension [length=" + length + ", width=" + width + "]";
}
}
номер Ковер
import java.io.*;
import java.util.ArrayList;
import java.util.Scanner;
public class RoomCarpet {
private RoomDimension roomDimensions;
private double costOfCarpet;
public RoomCarpet(RoomDimension roomDimensions, double costOfCarpet) {
super();
this.roomDimensions = roomDimensions;
this.costOfCarpet = costOfCarpet;
}
public double getTotalCost() {
return costOfCarpet * roomDimensions.getArea();
}
@Override
public String toString() {
return "RoomCarpet [roomDimensions=" + roomDimensions
+ ", costOfCarpet=" + costOfCarpet + ", "
+ "total cost=" + getTotalCost() + "]";
}
}
'из-за error': является ли это секрет ошибка? Если нет, добавьте его в вопрос. А что такое строка '31' в' MainProgram'? – Tom
Какая ошибка? Что такое строка 31? – August
Приносим извинения, код специально: // Создаем объекты RoomDimension и RoomCarpet. CarpetCalculatorProgram calculatorProgram = новый CarpetCalculatorProgram(); RoomDimension dimensions = calculatorProgram.new RoomDimension (длина, ширина); RoomCarpet roomCarpet = calculatorProgram.new RoomCarpet (размеры, CARPET_PRICE_PER_SQFT); –