1. 程式人生 > >.Java多分支;if……else…… 每噸貨物每公里運費P與運輸距離S有關,路途越遠,每公里運價越低。兩種解決方案

.Java多分支;if……else…… 每噸貨物每公里運費P與運輸距離S有關,路途越遠,每公里運價越低。兩種解決方案

每噸貨物每公里運費P與運輸距離S有關,路途越遠,每公里運價越低。公式如下:
p=10s<100
8100<=s<150
7150<=s<200
6200<=s<300
5.5 300<=s<500
5s>=500
如果所付的總運費超過5000元時,再給予九五折優惠,
從鍵盤輸入貨物噸數、運輸公里數,求應付的運費,要求精確到角、分。


//不用方法
import java.util.Scanner;
class Dome6
{
 public static void main(String[] args){
   Scanner sc=new Sacnner(System.in);
   System.out.println("請輸入你要運輸的噸數:");
   double x=sc.nextInt();
   System.out.println("請輸入你要運輸的距離:");
   double s=sc.nextInt(); 
   if(s<100){
        int p=10;
      if(x*p<5000){
               System.out.println("需要的運費為:"+(x*p));
      }else{   System.out.println("需要的運費為:"+(x*p)*0.95); }
   }else if(s>=100&&s<150){
        int p=8;
      if(x*p<5000){
               System.out.println("需要的運費為:"+(x*p));
      }else{   System.out.println("需要的運費為:"+(x*p)*0.95); }


   }else if(s>=150&&s<200){
        int p=7;
      if(x*p<5000){
               System.out.println("需要的運費為:"+(x*p));
      }else{   System.out.println("需要的運費為:"+(x*p)*0.95); }


   }else if(s>=200&&s<300){
        int p=6;
      if(x*p<5000){
              System.out.println("需要的運費為:"+(x*p));
     }else{   System.out.println("需要的運費為:"+(x*p)*0.95); }


   }else if(s>=300&&s<500){
        int p=5.5;
      if(x*p<5000){
              System.out.println("需要的運費為:"+(x*p));
      }else{  System.out.println("需要的運費為:"+(x*p)*0.95); }


   }else if(s>=500){
        int p=5;
      if(x*p<5000){
               System.out.println("需要的運費為:"+(x*p));
      }else{   System.out.println("需要的運費為:"+(x*p)*0.95); }
    }
   }
 }
}


//使用方法後
import java.util.Scanner;
class Dome6
{
 public static void main(String[] args){
   Scanner sc=new Scanner(System.in);
   System.out.println("請輸入你要運輸的噸數:");
   double x=sc.nextInt();
   System.out.println("請輸入你要運輸的距離:");
   double s=sc.nextInt(); 
   if(s<100){
        double p=10;      
        Freight(x,p); 
   }else if(s>=100&&s<150){
        double p=8;
        Freight(x,p);
   }else if(s>=150&&s<200){
        double p=7;
        Freight(x,p); 
   }else if(s>=200&&s<300){
        double p=6;
        Freight(x,p); 
   }else if(s>=300&&s<500){
        double p=5.5;
        Freight(x,p);
   }else if(s>=500){
        double p=5;
Freight(x,p);
    }
   }
   public static void Freight(double x,double p){
  if (x*p>5000)
  {
   System.out.println("需要的運費為:"+(x*p)*0.95);
  }  else{
   System.out.println("需要的運費為:"+(x*p));
      } 
   }
 }