切換
舊版
前往
大廳
主題

意義不明的java練習_④

深海異音 | 2013-12-18 14:48:31 | 巴幣 0 | 人氣 915


程式設計  的小考的題目:



在專案資料夾裡面創建一個【data.txt】,

data.txt的內容
國文,英文,管理學,程設,經濟學
85,90,95,80,70
3,2,3,3,2

說明:
第一行:科目名稱
第二行:分數
第三行:學分

  1. FileReader讀取資料,並印出data的內容
  2. 計算加權總分
  3. 計算加權平均





程式碼
import  java.io.BufferedReader;
import  java.io.FileReader;
import  java.util.ArrayList;

public  class  d {

   public static  void  main(String[]  args)  throws  Exception {

      BufferedReader  data =  
            new  BufferedReader(new  FileReader("src/data.txt"));
      String  s  =  "";
      ArrayList<String>  ming_cheng  =  new  ArrayList<String>();//科目名稱
      ArrayList<String>  cheng_ji =  new  ArrayList<String>();//成績
      ArrayList<String>  xue_fen =  new  ArrayList<String>();//學分

      for  (int  i  =  0;  (s  =  data.readLine())  !=  null;  i++)  {

          System.out.println(s);

          switch (i)  {
          case  0://1行:科目名稱
             ming_cheng  =  cuen_array(s);
             break;
          case  1://2行:成績
             cheng_ji  =  cuen_array(s);
             break;
          case  2://3行:學分
             xue_fen  =  cuen_array(s);
             break;
          }

      }//  for  end----------
      
      System.out.println("//---------------");
      System.out.println("加權總分:"  +  ji_zong(cheng_ji,  xue_fen));
      System.out.println("加權平均:"  +  (float)ji_zong(cheng_ji,  xue_fen)
             /  (float)ji_zxue_fen(xue_fen));
      
   }//main  end----------
   

   //計算【總學分】(傳入 學分ArrayList ;回傳 總學分int
   static int  ji_zxue_fen(ArrayList<String>  array) {
      int  sum  =  0;
      for  (String  string :  array)  {
          sum  +=  Integer.valueOf(string);
      }
      return sum;
   }


   //計算【加權總分】
  //(傳入 成績ArrayList , 學分ArrayList回傳 加權總分int )
   static int  ji_zong(ArrayList<String>  array_1,
                                    ArrayList<String>  array_2)  {
      int  sum  =  0;
      for  (int  i  =  0;  i  <  array_1.size();  i++)  {
          sum  +=  Integer.valueOf(array_1.get(i))
                *  Integer.valueOf(array_2.get(i));
      }
      return sum;
   }


   //存入Arraylist(傳入 要分割的String;回傳ArrayList
   static ArrayList  cuen_array(String  s)  {
      ArrayList<String>  array  =  new  ArrayList<String>();
      String  ch  =  "";
      array.add("");
      int  w  =  0;
      for  (int  j  =  0;  j  <  s.length();  j++)  {
          ch  =  String.valueOf(s.charAt(j));
          if  (ch.equals(","))  {
             w++;
             array.add("");
          }  else  {
             array.set(w,  array.get(w) +  ch);
          }
      }
      return array;
   }
   
   
}
 




截圖:

送禮物贊助創作者 !
0
留言

創作回應

Kantai
板規:《3》洗板、跨板多貼、現金交易、商業廣告。
2013-12-18 14:56:40
深海異音

意義不明
2013-12-18 14:57:50
Kantai
http://forum.gamer.com.tw/water.php?bsn=60559
2013-12-18 14:58:31
深海異音
頗ㄏ
2013-12-18 15:14:07

更多創作