думаю, printf и конкатенация строк;новичок в этом будущем выглядит мрачно - PullRequest
0 голосов
/ 11 февраля 2019

Код работает нормально.Просто ищу информацию о том, как настроить мой отпечаток f и получить желаемый результат.

подписывает более одного заявления (ий) о печати f:

import java.util.Scanner;

public class Coupon {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input = new Scanner(System.in);
        double total = 0;
        double rate = 0;
        double coupon = 0;

        System.out.print ( " Please enter the cost of your groceries:") ;
        total = input.nextDouble();

        if (total < 10)
            rate = 0;

        else if (total > 10.01 && total <=60 ) 
            rate = .08;

        else if (total > 60.01 && total <=150 ) 
            rate = .10;

        else if (total > 150.01 && total <=210 ) 
            rate = .12;

        else if (total > 210.01)
            rate = .14; 

        coupon = total*rate;

        System.out.printf(" You win a discount coupon worth $ %3.2f\n",coupon, "(",rate, "% of your" ,total, "purchase");
        }
}

Вы выиграли купон на скидку на сумму$ 1,12.(8% от цены покупки)

1 Ответ

0 голосов
/ 11 февраля 2019

Как настроить printf?

Первый аргумент должен быть строкой формата с некоторым числом (назовите его N здесь) спецификаторов формата (начиная с процентов), отмечающих, где вы хотитезначения для вставки, за которыми следуют N аргументы, предоставляющие значения для вставки.

Если необходимо вставить купон, ставку и покупку, ваш вызов должен выглядеть примерно как

 System.out.printf(" ... coupon worth $%3.2f (%3.1f %% of your total purchase $%4.2f",
                   coupon, rate, purchase);

Существует 3 %f спецификатора формата и 3 аргумента.Обратите внимание, что буквенный знак процента увеличен вдвое.

Я догадался о соответствующей ширине полей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...