Coins - от "While" упражнението - без кастване
Здравейте, на всички които мога да помогна с решението си и които могат да го коментират (предварително Благодаря).
Задачата е за рестото на монетите от вендинг машината. Оказва се (за начинаещитите като мен), че Java прави малко нежелани промени като смята дабълите. На упражнението изписахме "String.format", които нямах щастието да разбера, въпреки, че бяха обяснени многократно.
Решил съм задачата, като съм прехвърлил "сумата" в стотинки и съм закръглял след всяко изчисление в отделните while-ове. Правил съм по while за всеки тип монета (дори и да е малко тромаво).
Judge ми даде 100/100.
import java.util.Scanner; public class opitcoin { public static void main(String[] args) { Scanner input = new Scanner(System.in); double amount = Double.parseDouble(input.nextLine()); double stotinki = amount * 100; int coins = 0; while (stotinki >= 200){ stotinki -= 200; Math.round(stotinki); coins++; } while (stotinki >= 100){ stotinki -= 100; Math.round(stotinki); coins++; } while (stotinki >= 50){ stotinki -= 50; Math.round(stotinki); coins++; } while (stotinki >= 20){ stotinki -= 20; Math.round(stotinki); coins++; } while (stotinki >= 10){ stotinki -= 10; Math.round(stotinki); coins++; } while (stotinki >= 5){ stotinki -= 5; Math.round(stotinki); coins++; } while (stotinki >= 2){ stotinki -= 2; Math.round(stotinki); coins++; } while (stotinki >= 1){ stotinki -= 1; Math.round(stotinki); coins++; } System.out.println(coins); } }