class ex0423b{
public static void main(String[] args){
String stdRec="E9923017,Mary Wu,75,0.3,67,0.3,82,0.4";
String[] token=stdRec.split("[,]");
double fscore=0;
int s1,s2,s3;
double p1,p2,p3;
s1=Integer.parseInt(token[2]);
s2=Integer.parseInt(token[4]);
s3=Integer.parseInt(token[6]);
p1=Double.parseDouble(token[3]);
p2=Double.parseDouble(token[5]);
p3=Double.parseDouble(token[7]);
fscore=s1*p2+s2*p2+s3*p3;
System.out.println(" Name: "+ token[1]);
System.out.println(" ID: "+ token[0]);
System.out.println(" 1st Score: "+ token[2]);
System.out.println(" 2nd Score: "+ token[4]);
System.out.println(" 3rd Score: "+ token[6]);
System.out.println(" Final Score: "+ fscore);
}
}
class score{
int[] sdata;
int pvalue;
score(int[] data){
sdata=data;
pvalue=60;
}
void setPvalue(int pp){
this.pvalue=pp;
}
double getAvg(){ // Two decimal places
int count=0,sum=0;
for(int i:sdata) {
sum+=i;
count++;
}
return (int)((float)sum/count*100)/100.0;
}
int getPassNo(){
int count=0;
for(int i:sdata) if(i>=pvalue) count++;
return count;
}
}
class subScore extends score{ // inhertance super class score
// call super class constructor
int[] sdata;
subScore(int[] d){
super(d);
sdata=super.sdata;
}
// create a method for sorting
void sort(){
int tmp;
for(int i=0;i<sdata.length-1;i++){
for(int j=i+1;j< sdata.length;j++){
if(sdata[i] < sdata[j]){
tmp=sdata[i];
sdata[i]=sdata[j];
sdata[j]=tmp;
}
}
}
}
int getRank(int f){
return sdata[f-1];
}
int getHigh(){
return sdata[0];
}
int getLow(){
return sdata[sdata.length-1];
}
}
class ex0430{
public static void main(String[] args)
{
int[] data1={75, 90, 83, 42, 66, 55, 93, 72, 88, 62, 35, 96, 81, 53, 91}; // ITMA 60
int[] data2={78, 54, 63, 89, 79, 67, 95, 46, 93, 81, 99, 50, 70, 66, 90, 71, 88}; // ITMB 70
//
// instance an object by data1
subScore d1 = new subScore(data1);
d1.setPvalue(60);
d1.sort();
//
// instance an object by data2
subScore d2 = new subScore(data2);
d2.setPvalue(70);
d2.sort();
//
System.out.println(" Average of ITMA: "+d1.getAvg());
System.out.println(" PassNo of ITMA: "+d1.getPassNo());
System.out.println(" Highest score of ITMA: "+d1.getHigh());
System.out.println(" Lowest score of ITMA: "+d1.getLow());
System.out.println(" 3RD score of ITMA: "+d1.getRank(3));
System.out.println(" 7th score of ITMA: "+d1.getRank(7));
System.out.println(" ");
System.out.println(" Average of ITMB: "+d2.getAvg());
System.out.println(" PassNo of ITMB: "+d2.getPassNo());
System.out.println(" Highest score of ITMB: "+d2.getHigh());
System.out.println(" Lowest score of ITMB: "+d2.getLow());
System.out.println(" 2nd score of ITMB: "+d2.getRank(2));
System.out.println(" 5th score of ITMB: "+d2.getRank(5));
}
}
interface Ip1{
int num=20;
void show();
}
interface Ip2{
int num=50;
void show();
}
interface Ic extends Ip1, Ip2{
void show(String ss);
}
public class ex0514 implements Ic{
public void show(){
show(" ");
}
public void show(String ss){
System.out.println(ss+" num of Ip1 "+Ip1.num+" num of Ip2 "+Ip2.num);
}
public static void main(String[] argv){
ex0514 obj=new ex0514();
obj.show();
obj.show(" Test ");
}
}
abstract class Land{
abstract double area();
abstract double perimeter();
}
class Circle extends Land{
double radius;
Circle(double r){
radius=r;
}
double area(){
return radius*radius*Math.PI;
}
double perimeter(){
return radius*2*Math.PI;
}
}
class Square extends Land{
double size;
Square(double s){
size=s;
}
double area(){
return size*size;
}
double perimeter(){
return size*4;
}
}
class ex0514a{
static public void main(String argv[]){
Circle c = new Circle(5.6); // generate a Circle object
Square s = new Square(7.3); // generate a Square object
// Output Circle's area & perimeter (raduis is 5.6)
System.out.println("Circle's area: "+c.area());
System.out.println("Circle's perimeter: "+c.perimeter());
// Output Square's area & perimeter (size is 7.3)
System.out.println("Square's area: "+s.area());
System.out.println("Square's perimeter: "+s.perimeter());
}
}
dataB.txt
A9528003M168.5
A9528005F170.5
A9528006M185.5
A9528011M174.0
A9528012F157.0
A9528013M164.0
A9528017M177.0
A9528025F178.0
A9528028M184.0
A9528031M181.0
import java.io.*;
class ex0521a{
public static void main(String[] args) throws IOException
{
FileReader fr=new FileReader("dataB.txt"); // fileA: dataB.txt
BufferedReader bfr= new BufferedReader(fr);
FileWriter fw = new FileWriter("reportB.txt"); // output file: reportB.txt
BufferedWriter bfw = new BufferedWriter(fw);
String id,str,gen,height;
double dheight;
while ((str=bfr.readLine())!=null) // read a record from fileA
{
id=str.substring(0,8);
gen=str.substring(8,9);
height=str.substring(9);
dheight=Double.parseDouble(height);
if(dheight >= 175.0) {
System.out.println(id+" "+gen+" "+height);
bfw.write(id+" "+gen+" "+height);
bfw.newLine();
}
}
bfw.flush();
fr.close();
fw.close();
}
}
dataA.txt
A9528003;Mary Chen;75;82;65
A9528005;Roney Liu;86;62;75
A9528006;CoCo Wu;43;62;45
A9528011;Billy Kuo;95;88;93
A9528012;Johny Hu;72;66;65
A9528013;Chung LU;53;42;35
A9528017;Beer Lee;77;66;88
A9528025;Cool Hung;43;62;45
A9528028;Fly Wang;93;82;98
A9528031;Woody Lai;82;76;67
import java.io.*;
class score{
double[] sc;
score(double[] data){
sc=data;
}
double getHigh(){
double high=0;
for(double d:sc)
if(d>high) high=d;
return high;
}
int passNo(){
int sum=0;
for(double d:sc)
if(d>=60)sum++;
return sum;
}
}
class ex0521b{
public static void main(String[] args) throws IOException
{
FileReader fr=new FileReader("dataA.txt"); // fileA: dataA.txt ==> 學生成績資料檔
BufferedReader bfr= new BufferedReader(fr);
// 將學號、成績1, 成績2, 成績3 及三科平均分數(*)、姓名
// 且產生平均最高分及平均及格人數寫入 fileB: report.txt
//
// String sc="94"
// int x=Integer.parseInt(sc); ==> x=94;
//
FileWriter fw = new FileWriter("report.txt"); // output file: report.txt
BufferedWriter bfw = new BufferedWriter(fw);
//
// read first record 內容為學生人數 (成績筆數)
//
String name,id,str;
int recno=0,isc1,isc2,isc3=0;
double avg;
double[] sc=new double[10];
char star='*';
while ((str=bfr.readLine())!=null) // read a record from fileA
{
String[] token=str.split("[;]");
id=token[0];
name=token[1];
isc1=Integer.parseInt(token[2]);
isc2=Integer.parseInt(token[3]);
isc3=Integer.parseInt(token[4]);
avg=(int)(((double)isc1+isc2+isc3)/3.0*10)/10.0;
if(avg<60) star='*';
else star=' ';
System.out.println(id+" "+isc1+" "+isc2+" "+isc3+" "+avg+" "+name+star);
sc[recno]=avg;
recno++;
bfw.write(id+" "+isc1+" "+isc2+" "+isc3+" "+avg+" "+name+star);
bfw.newLine();
}
score obj=new score(sc);
System.out.println("最高分:"+obj.getHigh()+" 及格人數:"+ obj.passNo());
bfw.write("最高分:"+obj.getHigh()+"及格人數:"+obj.passNo());
bfw.newLine();
bfw.flush();
fr.close();
fw.close();
}
}
class Parent{
int i;
Parent(int i){
this.i=i;
}
void show(){
System.out.println(" i: "+i);
}
}
class Child extends Parent{
Child(){
super(10);
}
Child(int i){
super(i);
}
}
class t0430{
public static void main(String[] args)
{
Parent obj=new Parent(99);
obj.show();
Child obj1=new Child(66);
obj1.show();
Child obj2=new Child();
obj2.show();
}
}
class score{
int[] data;
score(int[] d){ // build a constructor & set integer arrary as parameter
data=d;
}
void sort(){
int tmp;
for(int i=0;i<data.length-1;i++){
for(int j=i+1;j< data.length;j++){
if(data[i] < data[j]){
tmp=data[i];
data[i]=data[j];
data[j]=tmp;
}
}
}
}
}
class t0430a{
public static void main(String[] args)
{
int[] data={78, 54, 63, 89, 79, 46, 93, 81, 99, 50, 70, 66};
for(int ss:data) System.out.print(" "+ss);
System.out.println(" ");
// instance an object
// call the method of sort
score s = new score(data);
s.sort();
for(int ss:data) System.out.print(" "+ss);
}
}
沒有留言:
張貼留言