四分之一计数器 (kotlin)
Quarter counter (kotlin)
好的,首先我想说我是一个新的程序员而且我是自学的。我目前正在思考如何制作一个程序(我使用的是 Kotlin)来计算给定值的季度数,并说明剩余的变化。
所以如果我输入:1.45
输出会告诉我:
5 个季度
0.20 变化
现在,我已经对 void 方法进行了研究,但我仍然对它的外观感到困惑。有人愿意帮助我了解如何开始使用它吗?
我的意思是以美元计算的四分之一。因此,如果您有 1.40 美元/0.25 美元(季度)= 5 个季度和 0.20 美元剩余。所以我想做一些可以计算货币的东西。我已经有一个计算数学的弱代码,但我需要在 2 个不同的输出行上分开的季度数和剩余零钱。
fun main() {
val input = "1.45"
// here you convert the input into minor units, e.g. .45 => 145 cents
val total = (input.toFloat() * 100).toInt()
// here you get whole number of quarters
val quartersCount = total / 25
// here you get the change and convert it back to major units (20 cents => [=10=].2)
val change = (total - 25 * quartersCount) / 100f
println("$quartersCount quarters")
println("${"%.2f".format(change)} Change") // bit more complex just to keep 2 decimal places
}
您可以println
将每个输出放在不同的行上
fun main() {
change(1.25)
changeWithNames(1.25)
}
fun change(x: Double) {
println(x.div(0.25).toInt()) // toInt to cut off the remainder
println(x.rem(0.25).toFloat()) // toFloat so that it rounds to the nearest hundreds place
}
fun changeWithNames(x: Double) {
println("${"%s".format(x.div(0.25).toInt())} quarters")
println("${"%.2f".format(x.rem(0.25))} Change")
}
fun changeWithDimes(x: Double) {
var q = x.div(0.25).toInt() // Quarters
var d = x.rem(0.25).div(0.10).toInt() // Dimes
var rem = (x - (q * 0.25 + d * 0.10)).toFloat() // Remainder
println(q)
println(d)
println(rem)
}
好的,首先我想说我是一个新的程序员而且我是自学的。我目前正在思考如何制作一个程序(我使用的是 Kotlin)来计算给定值的季度数,并说明剩余的变化。
所以如果我输入:1.45
输出会告诉我:
5 个季度
0.20 变化
现在,我已经对 void 方法进行了研究,但我仍然对它的外观感到困惑。有人愿意帮助我了解如何开始使用它吗?
我的意思是以美元计算的四分之一。因此,如果您有 1.40 美元/0.25 美元(季度)= 5 个季度和 0.20 美元剩余。所以我想做一些可以计算货币的东西。我已经有一个计算数学的弱代码,但我需要在 2 个不同的输出行上分开的季度数和剩余零钱。
fun main() {
val input = "1.45"
// here you convert the input into minor units, e.g. .45 => 145 cents
val total = (input.toFloat() * 100).toInt()
// here you get whole number of quarters
val quartersCount = total / 25
// here you get the change and convert it back to major units (20 cents => [=10=].2)
val change = (total - 25 * quartersCount) / 100f
println("$quartersCount quarters")
println("${"%.2f".format(change)} Change") // bit more complex just to keep 2 decimal places
}
您可以println
将每个输出放在不同的行上
fun main() {
change(1.25)
changeWithNames(1.25)
}
fun change(x: Double) {
println(x.div(0.25).toInt()) // toInt to cut off the remainder
println(x.rem(0.25).toFloat()) // toFloat so that it rounds to the nearest hundreds place
}
fun changeWithNames(x: Double) {
println("${"%s".format(x.div(0.25).toInt())} quarters")
println("${"%.2f".format(x.rem(0.25))} Change")
}
fun changeWithDimes(x: Double) {
var q = x.div(0.25).toInt() // Quarters
var d = x.rem(0.25).div(0.10).toInt() // Dimes
var rem = (x - (q * 0.25 + d * 0.10)).toFloat() // Remainder
println(q)
println(d)
println(rem)
}