[英]for-loop time conversion using java
I'm just new in java.I am trying to convert money to time which is 1 dollar == 3 minutes but minutes-- wont let me display the exact minutes of time in the second loop 我只是java的新手,我试图将钱转换为1美元== 3分钟的时间,但是分钟-不会让我在第二个循环中显示确切的时间分钟
package javaapplication8;
import java.util.Scanner;
public class JavaApplication8 {
public static void main(String[] args) {
/*
1 Dollar = 3 minutes
*/
//I am trying to convert money to time which is 1 dollar == 3 minutes but minutes--
//wont let me display the exact minutes of time in the second loop
int minutes;
int amount;
int hour=0;
int time;
Scanner in = new Scanner(System.in);
System.out.println("Please Enter Amount");
amount = in.nextInt();
time = amount * 3;
for (minutes = time; minutes>=59; minutes--)
{
minutes = minutes- 59;
hour = hour+1;
System.out.println(minutes+"minutes");
System.out.println(hour+"hour");
}
}
}
So if money == 40 here is the problem: 因此,如果金钱== 40,这就是问题所在:
Please enter amount: 请输入金额:
40 40
61 minutes 61分钟
1 hour 1小时
here lies the problem it should be 2 minutes but because of minutes-- its not, 这就是问题,应该是2分钟,但由于分钟-不是,
1 minutes 1分钟
2 hour 2小时
Your second loop is a weird way of implementing it you should replace minute--
by minute-=60
like so: 你的第二个循环是实现它的奇怪的是,你应该更换minute--
通过minute-=60
,如下所示:
for (minutes = time; minutes>=60; minutes-=60) {
hour = hour+1;
}
but you could just implement it by using arithmetic: 但是您可以使用算术来实现它:
hour = minute/60;
minute = minute % 60;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.