其他分享
首页 > 其他分享> > 记校赛第一题

记校赛第一题

作者:互联网

N市的某个加油站提供92#,95#和98#汽油,当天的汽油价如下表所示:

汽油标准单价(元/升)
92# 6.86
95# 7.45
98# 8.16

现在,要求编写一个程序,输入选择的汽油标准和加油量(单位:升),计算本次加油所需要的价钱。如果输入的汽油标准不在表格内,则输出 Not available!

输入格式:

在一行中输入一个整数 N 和一个实数 L,N 表示汽油标准(其取值范围为{92,95,97},L 是一个非负实数。中间用空格隔开。

输出格式:

在一行中输出本次加油所需要的价格,保留小数点后2位。

输入样例01:

92 31.3



结尾无空行

输出样例01:

214.72



结尾无空行

输入样例02:

90 18.9



结尾无空行

输出样例02:

Not available!



结尾无空行

原来应该是一道送分题,结果考的时候太紧张忘记用printf,花了1个多小时,太蠢了

代码:(请欣赏)

 1 import java.util.Scanner;
 2 public class Main {
 3 ​
 4   public static void main(String[] args) {
 5              Scanner scan = new Scanner(System.in);
 6              int n = scan.nextInt();
 7              double m = scan.nextDouble();
 8              Tools tool = new Tools();
 9              tool.js(n, m);
10              }
11 ​
12 }
13 class Tools{
14   public void js(int n,double m){
15     if(n == 92){
16       int x = (int)(6.86 * m);
17       double yx = ((6.86 * m) % 1) * 1000;
18       int tt = (int)yx;
19       int gw = tt % 10;
20       if(gw >= 5){
21         tt = tt /10;
22         tt++;
23       }
24       else tt = tt / 10;
25         int  xs = tt % 1000;
26         yx = xs * 0.01;
27         yx += x;
28         boolean flag = false;
29         String sss = yx + "";
30         int zs = 0;
31         char[] c =sss.toCharArray();
32         for(int i = 0;i < c.length;i++){
33           if(flag)zs++;
34           if(c[i] == '.')flag = true;
35         }
36         System.out.print(yx);
37           if(zs == 1)System.out.print("0");
38           if(zs == 0)System.out.print("00");
39     }
40     else if(n == 95){
41       int x = (int)(7.45 * m);
42       double yx = ((7.45 * m) % 1) * 1000;
43       int tt = (int)yx;
44       int gw = tt % 10;
45       if(gw >= 5){
46         tt = tt /10;
47         tt++;
48       }
49       else tt = tt / 10;
50         int  xs = tt % 1000;
51         yx = xs * 0.01;
52         yx += x;
53         boolean flag = false;
54         String sss = yx + "";
55         int zs = 0;
56         char[] c =sss.toCharArray();
57         for(int i = 0;i < c.length;i++){
58           if(flag)zs++;
59           if(c[i] == '.')flag = true;
60         }
61         System.out.print(yx);
62           if(zs == 1)System.out.print("0");
63           if(zs == 0)System.out.print("00");
64     }
65     else if(n == 98){
66       int x = (int)(8.16 * m);
67 double yx = ((8.16 * m) % 1) * 1000;
68 int tt = (int)yx;
69 int gw = tt % 10;
70 if(gw >= 5){
71 tt = tt /10;
72 tt++;
73   }
74 else tt = tt / 10;
75       int  xs = tt % 1000;
76       yx = xs * 0.01;
77       yx += x;
78       boolean flag = false;
79       String sss = yx + "";
80       int zs = 0;
81       char[] c =sss.toCharArray();
82       for(int i = 0;i < c.length;i++){
83       if(flag)zs++;
84       if(c[i] == '.')flag = true;
85       }
86       System.out.print(yx);
87       if(zs == 1)System.out.print("0");
88       if(zs == 0)System.out.print("00");
89   }
90 else System.out.print("Not available!");
91   }
92 }

 

 

标签:第一,int,tt,记校赛,System,yx,print,zs
来源: https://www.cnblogs.com/Imepeto/p/15754572.html