創作內容

0 GP

意義不明的java練習_④

作者:深海異音│2013-12-18 14:48:31│贊助:0│人氣:586

程式設計  的小考的題目:



在專案資料夾裡面創建一個【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;
   }
   
   
}
 




截圖:

引用網址:https://home.gamer.com.tw/TrackBack.php?sn=2278415
All rights reserved. 版權所有,保留一切權利

相關創作

留言共 2 篇留言

Kantai
板規:《3》洗板、跨板多貼、現金交易、商業廣告。

12-18 14:56

深海異音

意義不明12-18 14:57
Kantai
http://forum.gamer.com.tw/water.php?bsn=60559

12-18 14:58

深海異音
頗ㄏ12-18 15:14
我要留言提醒:您尚未登入,請先登入再留言

喜歡★hbl917070 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:意義不明的java練習_... 後一篇:java_矩陣相乘...

追蹤私訊

作品資料夾

m6rmp4fu0巴友們
明天長篇連載更新唷,歡迎來咀嚼!看更多我要大聲說13小時前


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】