如何将分钟变成几年和几天?

时间:2015-03-21 20:05:34

标签: java

在教科书中,它解释了如何将秒数转换为分钟数,并保留了多少秒,但我的问题如下。

  

编写一个程序,提示用户输入分钟(例如,1   十亿分钱),并显示分钟的年数和天数。   为简单起见,假设一年有365天。这是一个例子。

Enter the number of minutes: 100000000
100000000 minutes is approximately 1902 years and 214 days.

我目前的情况如下:

import java.util.Scanner;

public class Ch2_Exercise2_7 {
  public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    // Prompt user for number of minutes
    System.out.println("Enter the number of minutes:");
    int minutes = input.nextInt();

     // Number of minutes in a year
    int year = minutes / 525600;
    int day = minutes / 1440;
    int remainingMinutes = day % 525600;


    System.out.println(minutes + " minutes is " + year + " years and "  +  remainingMinutes + " days ");
    }

   }

凭借我所拥有的,它不会给我剩余的几分钟时间。例如,如果我输入525600分钟,那么它给我1年365天的时间应该是1年。

我正在使用Java Eclipse。任何帮助将不胜感激!如果我错误地发布了代码,我会提前道歉。

5 个答案:

答案 0 :(得分:4)

你在这里搞砸了一下:

// Number of minutes in a year
int year = minutes / 525600;
int day = minutes / 1440;
int remainingMinutes = day % 525600;

你花了总分钟数除以1440,所以你得到的天数是错误的。你应该拿下余数然后除以1440。

另一件事是在你的印刷声明中。你写了一年后剩下的分钟数作为天数。

这应该有效:

// Number of minutes in a year
int year = minutes / 525600;
int remainingMinutes = minutes % 525600;
int day = remainingMinutes / 1440;

System.out.println(minutes + " minutes is approximately " + year + " years and " + day + " days.");

答案 1 :(得分:0)

int mins,hours,remainingDays,days,years;

cout << "Enter minutes:";
cin >> mins;

hours = mins/60;
days = hours/24;
years = days/365;

remainingDays = days % 365;

cout << years << " years " << remainingDays << " days " << endl;

return 0;

答案 2 :(得分:0)

public class MinutesToYearsDaysCalculator {
    public static void printYearsAndDays(long minutes)
    {
        if(minutes<0) System.out.println("Invalid Value");
        else
        {
            long hours = minutes/60;
            long day   = hours/24;
            long years = day/365;
            long remainingDays = day % 365;
            System.out.println(minutes +" min = "+ years+" y and "+remainingDays +" d");
        }
    }

答案 3 :(得分:0)

导入 java.util.Scanner; 公共类 Prog13 {

public static void main(String[] args) {
    Scanner sc= new Scanner(System.in);
    System.out.println("Enter The Minute");
    int min=sc.nextInt();
    int year= min/(365*24*60);
    int remaining_min=(min%24*60*60);
    int day=remaining_min/24*60;
    
    System.out.println( min + " " + " Minutes is approximately:"+ year + " " +"year"+ ' '+ day + "Day" );
     

}

}

答案 4 :(得分:0)

你好,你可以使用这个结果

  import java.util.Scanner;
    
    public class MinToYearsAndDays {
        public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            System.out.print("number of minutes:");
            int minutes = input.nextInt();
            int year = minutes / 525600;
            int remainingMinutes = minutes % 525600;
            int day = (remainingMinutes / 1440);
    
            System.out.println(minutes + " minutes is approximately " + year + " years and " + day + " days ");
        }
    }