¿Qué me estoy perdiendo? He probado muchas formas de resolver esto.

programación


The cost to ship a package is a flat fee of 75 cents plus 25 cents per pound.
1. Declare a constant named CENTS_PER_POUND and initialize with 25.
2. Get the shipping weight from user input storing the weight into shipWeightPounds.
3. Using FLAT_FEE_CENTS and CENTS_PER_POUND constants, assign shipCostCents with the cost of shipping a package weighing shipWeightPounds.

Lo que he probado:

import java.util.Scanner;

public class ShippingCalculator {
   public static void main(String[] args) {
      Scanner scnr = new Scanner(System.in);
      int shipWeightPounds;
      int shipCostCents = 0;
      final int FLAT_FEE_CENTS = 75;
      final double CENTS_PER_POUND = 25;
      
      shipWeightPounds = scnr.nextDouble();
      shipCostCents = FLAT_FEE_CENTS + (CENTS_PER_POUND * shipWeightPounds);

      System.out.println("Weight(lb): " + shipWeightPounds);
      System.out.println("Flat fee(cents): " + FLAT_FEE_CENTS);
      System.out.println("Cents per pound: " + CENTS_PER_POUND);
      System.out.println("Shipping cost(cents): " + shipCostCents);
   }
}

Solución 1

Reemplazar

Cita:

doble final CENTS_PER_POUND = 25;

PesodelEnvíoLibras = scnr.nextDouble();

con

final int CENTS_PER_POUND = 25;

shipWeightPounds = scnr.nextInt();

Solución 2

Cita:

¿Qué me estoy perdiendo? He probado muchas formas de resolver esto.

No es tu problema, pero:
Todos estos

Java
int shipCostCents = 0;
final int FLAT_FEE_CENTS = 75;
final double CENTS_PER_POUND = 25;

son centavos.
¿Por qué estás mezclando tipos de datos?
Se consistente !

コメント

タイトルとURLをコピーしました