charityCampaign
Здравейте, някой може ли да ми каже каква е разликата между двата изхода, и защо на част от проверките в judge системата излезе грешка при първият?
import java.util.Scanner;
public class charityCampaign {
    public static void main (String [] args){
        Scanner scanner= new Scanner (System.in);
        int days= Integer.parseInt (scanner.nextLine());
        int confectioner= Integer.parseInt(scanner.nextLine());
        int cakes= Integer.parseInt(scanner.nextLine());
        int waffles= Integer.parseInt(scanner.nextLine());
        int pancakes= Integer.parseInt(scanner.nextLine());
        int allCakes=days*confectioner*cakes;
        int allWaffles=days*confectioner*waffles;
        int allPancakes=days*confectioner*pancakes;
        double priceCakes=allCakes*45;
        double priceWaffles=allWaffles*5.80;
        double pricePancakes=allPancakes*3.20;
        double sumPrice=priceCakes+priceWaffles+pricePancakes;
        double benefit= sumPrice-sumPrice/8;
        System.out.printf("%.2f",benefit);
    }
}
import java.util.Scanner;
public class charityCampaign2 {
    public static void main (String [] args) {
        Scanner scanner = new Scanner(System.in);
        int days = Integer.parseInt(scanner.nextLine());
        int confectioner = Integer.parseInt(scanner.nextLine());
        int cakes = Integer.parseInt(scanner.nextLine());
        int waffles = Integer.parseInt(scanner.nextLine());
        int pancakes = Integer.parseInt(scanner.nextLine());
        double priceCakes = cakes * 45;
        double priceWaffles = waffles * 5.80;
        double pricePancakes = pancakes * 3.20;
        double perDay = (priceCakes + priceWaffles + pricePancakes) * confectioner;
        double all = perDay * days;
        double benefit = all - all / 8;
        System.out.printf("%.2f", benefit);
    }
}
        
Да, само че в двете решения използвам различни променливи за формирането на priceCakes, priceWaffles и pricePancakes.Крайният резултат е един и същ и с двата кода, т.е. не съм объркала или забравила някой множител. От математическа гледна точка би трябвало да са еднакви. Евентуално, ако входните данни не са цели числа и някъде самата програма закръгля при пресмятането може да се получи разлика... поне според мен.