A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhang214214 中级黑马   /  2015-4-30 23:24  /  244 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

* 第一题, 从键盘接受一个数字,打印该数字表示的时间,最大单位到天,例如:
键盘输入6,打印6秒;
键盘输入60,打印1分;
键盘输入66,打印1分6秒;
键盘输入666,打印11分6秒;
键盘输入3601,打印1小时1秒

这是 我的基础测试题,你们看看还有其他更好的解么?   呵呵




package com.itheima;
import java.util.Scanner;  
public class Test1
{
          public static void main(String[] args)
          {
                  
               Scanner scan = new Scanner(System.in);  
               System.out.println("请输入一个数字:");
               int x = scan.nextInt();                //先把键盘输入的数值保存
               Calculate(x);
          }
          
         //定义一个计算函数
          public static void Calculate(int num)
          {
                  int t,s,f,m;
                  m = num%60;
                  f = (num-m)%3600;
                  s = (num-f-m)%86400;
              t = (num-s-f-m)/86400;
                  f = f/60;
                  s = s/3600;
                  String sss = "";
                          for(int i=0;i<4;i++)
                          {
                                  if(t!=0)
                                  {
                                          sss=sss.concat(t+"天");
                                          t = 0;
                                          continue;
                                  }
                                  if(s!=0)
                                  {
                                          sss=sss.concat(s+"小时");
                                          s = 0;
                                          continue;
                                  }
                                  if(f!=0)
                                  {
                                          sss=sss.concat(f+"分");
                                          f = 0;
                                          continue;
                                  }
               
                                  if(m!=0)
                                  {
                                           sss=sss.concat(m+"秒");
                                           m = 0;
                                           continue;
                                  }
                          }
                  System.out.println(sss);
          }
}


2 个回复

倒序浏览
顶!你这个可以转换所有数值了~
回复 使用道具 举报
大西洋 发表于 2015-5-1 00:34
顶!你这个可以转换所有数值了~

我这个基本完成题目要求,但是我想看看还有没有更好的解法 ...
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马