针对之前发布的那篇文章,方法的确很复杂,其实换一个角度,相当于是六十进制的三位数相加,那么按照之前学的十进制相加求百十个位的解法,把除数10换成60就行了,但是我还去搜索了Python解法的,它的思路还是判断会不会超过60,是否进位。和我之前发的那篇总思路是一样的,但是Python本身写出来很简便,就不做过多的叙述了,本题还是用java写。
分两行输入两组时分秒,空格分隔,编写一个函数,把对应的时和时相加,分和分相加,秒和秒相加,输出结果。结果也是时分秒,要满足时间规律,比如秒的范围是0~59。不考虑不合理的输入等特殊情况。
import java.util.Scanner;
import java.util.*;
class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// code here
int q, w, e;//最后输出的时、分、秒
int[] num1 = new int[3];//获得要相加的两个数组
int[] num2 = new int[3];
for(int i = 0; i < 3; i ++) {
num1[i] = input.nextInt(); // 一个一个读取
}
for(int i = 0; i < 3; i ++) {
num2[i] = input.nextInt();
}
int a = num1[0];
int b = num1[1];
int c = num1[2];
int x = num2[0];
int y = num2[1];
int z = num2[2];
int sum1 = a*60*60+b*60+c;
int sum2 = x*60*60+y*60+z;
int sum = sum1+sum2;
q = sum/60/60;
w = sum/60%60;
e = sum%60;
System.out.printf("%d" + " " + "%d" + " " + "%d", q, w, e);
}
}
备注:我也是一个初学者,也在学习中,有不好的地方大家多多指正,我也积极修改。