Професионална програма
Loading...
K.Zhulev avatar K.Zhulev 1 Точки

Programing basics with java, задача Fruit Market

Някой, ако може да помогне при задачата Fruit market

Пазар за плодове
Мария решава да мине на диета и отива до близкия пазар, за да купи ягоди, банани, портокали и малини. На конзолата се въвежда цената на ягодите в лв./кг. и количеството на бананите, портокалите, малините и ягодите, които трябва да закупи. Да се напише програма, която пресмята колко пари са ѝ необходими, за да плати сметката, като знаете, че:
цената на малините е с 50% по-ниска от тази на ягодите;
цената на портокалите е с 40% по-ниска от цената на малините;
цената на бананите е с 80% по-ниска от цената на малините.


Вход
От конзолата се четат 5 реда:
Цена на ягодите в лева – реално число в интервала [0.00 … 10000.00]
Количеството бананите в килограми – реално число в интервала [0.00 … 10000.00]
Количеството портокалите в килограми – реално число в интервала [0.00 … 10000.00]
Количеството малините в килограми – реално число в интервала [0.00 … 10000.00]
Количеството ягодите в килограми – реално число в интервала [0.00 … 10000.00]
Изход
Да се отпечата на конзолата едно число:
парите, които са необходими на Мария.
Ресултатът да се форматира до вторта цифра след десетичната запетая. 
Примерен вход и изход:
 
Вход    Изход           
48
10
3.3
6.5
1.7    333.12  

 

Обяснения  

 Цена на малините за килограм: 24 лв.
Цена на портокалите за килограм: 24 – (0.4 * 24) = 14.4 лв.
Цена на бананите за килограм: 24 – (0.8 * 24) = 4.8 лв.
Сума за малините: 6.5 * 24 = 156 лв.
Сума за портокалите: 3.3 * 14.4 = 47.52 лв.
Сума за бананите: 4.8* 10 = 48 лв.
Сума за ягодите: 1.7* 48 = 81.6 лв.
Обща сума: 156 + 47.52 + 48 + 81.6 = 333.12 лв.       

 


Вход    Изход           
63.5
3.57
6.35
8.15
2.5    561.15         
 

package com.company;

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        double strawbPrice = Double.parseDouble(scanner.nextLine());
        double bananasKg = Double.parseDouble(scanner.nextLine());
        double orangeKg = Double.parseDouble(scanner.nextLine());
        double raspKg = Double.parseDouble(scanner.nextLine());
        double strawbKg = Double.parseDouble(scanner.nextLine());

        double raspPrice = strawbPrice / 2;
        double orangePrice = raspPrice - 0.4 * raspPrice;
        double bananasPrice = raspPrice - 0.8 * raspPrice;

        double sumBananas = bananasKg * bananasPrice;
        double sumOrange = orangeKg * orangePrice;
        double sumRasp = raspKg * raspPrice;
        double sumStrawb = strawbKg * sumBananas;
        double total = (sumRasp + sumOrange + sumBananas + sumStrawb);

        System.out.printf("%.2f",total);
        // write your code here
    }
}

 

Тагове:
0
Programming Basics with Java
svephoto avatar svephoto 1072 Точки
Best Answer

Здравей, K.Zhulev,

 

Всичко е наред в кода ти за да работи за задачката, с изключение на една малка (може би по-скоро техническа и неволна) грешка. Какво виждаш на този ред от последните изчисления:

 

        double sumStrawb = strawbKg * sumBananas;

 

Вместо "strawbPrice" имаш "sumBananas". Като коригираш това си готов за 100/100. И ако искаш, махни скобите тук:

 

        double total = (sumRasp + sumOrange + sumBananas + sumStrawb);

 

С тях също работи без проблем и както трябва, но вслучая просто не са нужни.

 

Успех!

0
K.Zhulev avatar K.Zhulev 1 Точки

Да, там е бил проблема. Благодаря за отделеното време! 

0
svephoto avatar svephoto 1072 Точки

Моля! yes

0