Fruit Shop JAVA
Здравейте колеги,
тази задачка няколко пъти я пререшавам ,но не ми дава пълните точки в judge и се чудя какъв ѝ е проблемът?
Благодаря предварително!(отдолу е условието,после е решението).
1.Магазин за плодове
Магазин за плодове през работните дни работи на следните цени:
плод |
banana |
apple |
orange |
grapefruit |
kiwi |
pineapple |
grapes |
цена |
2.50 |
1.20 |
0.85 |
1.45 |
2.70 |
5.50 |
3.85 |
Събота и неделя магазинът работи на по-високи цени:
плод |
banana |
apple |
orange |
grapefruit |
kiwi |
pineapple |
grapes |
цена |
2.70 |
1.25 |
0.90 |
1.60 |
3.00 |
5.60 |
4.20 |
Напишете програма, която чете от конзолата плод (banana / apple / orange / grapefruit / kiwi / pineapple / grapes), ден от седмицата (Monday / Tuesday / Wednesday / Thursday / Friday / Saturday / Sunday) и количество (десетично число) , въведени от потребителя, и пресмята цената според цените от таблиците по-горе. При невалиден ден от седмицата или невалидно име на плод да се отпечата "error".
Примерен вход и изход
вход |
изход |
|
вход |
изход |
|
вход |
изход |
|
вход |
изход |
|
вход |
изход |
apple Tuesday 2 |
2.40 |
orange Sunday 3 |
2.70 |
kiwi Monday 2.5 |
6.75 |
grapes Saturday 0.5 |
2.10 |
tomato Monday 0.5 |
error |
FRUIT SHOP
package exercise3;
import java.util.Scanner;
public class FruitShop2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String fruit = scanner.nextLine();
String day = scanner.nextLine();
boolean iserror = false;
double quantity = Double.parseDouble(scanner.nextLine());
double price = 0.0;
if (day.equals("Monday") || day.equals("Tuesday") || day.equals("Wednesday") || day.equals("Thursday")
|| day.equals("Friday")) {
switch (fruit) {
case "banana":
price = quantity * 2.5;
break;
case "apple":
price = quantity * 1.20;
break;
case "orange":
price = quantity * 0.85;
break;
case "grapefruit":
price = quantity * 1.45;
break;
case "kiwi":
price = quantity * 1.70;
break;
case "pineaplle":
price = quantity * 1.50;
break;
case "grape":
price = quantity * 3.85;
break;
default:iserror = true; break;
}
}else if (day.equals("Saturday") || day.equals("Sunday")) {
switch ("fruit") {
case "banana":price = quantity * 2.7;break;
case "apple":price = quantity * 1.25;break;
case "orange":price = quantity * 0.9;break;
case "grapefruit": price = quantity * 1.60;break;
case "kiwi": price = quantity * 3.0;break;
case "pineaplle": price = quantity * 5.60;break;
case "grape": price = quantity * 4.20;break;
default: iserror = true; break;
}
}else {
iserror = true;
}
if (iserror){
System.out.println("error");
}else{
System.out.printf("%.2f " , price);
}
}
}
Здравей,
объркал си реда на четене на променливите. Първо трябва да прочетеш плода, а след това деня. Имаш и една грешка в цената на ябълката в съботния ден.
Поздрави :)