Untitled
unknown
plain_text
4 years ago
2.3 kB
72
Indexable
Tính điểm trung bình/Main.java
import java.util.*;
import java.io.*;
public class Main{
public static void main(String[] args) throws IOException,ClassNotFoundException,FileNotFoundException {
Scanner sc = new Scanner(new File("BANGDIEM.in"));
int t = Integer.parseInt(sc.nextLine());
ArrayList<Sv> res = new ArrayList<>();
for(int i = 1; i <= t; i++ ){
res.add(new Sv(i, sc.nextLine(), Float.parseFloat(sc.nextLine()), Float.parseFloat(sc.nextLine()), Float.parseFloat(sc.nextLine())));
}
res.sort(null);
int xh = 1;
res.get(0).setTt(xh);
for(int i = 1; i < res.size(); i++){
if(res.get(i).getDiem() < res.get(i-1).getDiem()){
res.get(i).setTt(i+1);
}
else res.get(i).setTt(res.get(i-1).getXh());
}
for(Sv a: res){
System.out.println(a);
}
}
}
Tính điểm trung bình/Sv.java
public class Sv implements Comparable<Sv> {
private String id,name;
private Float diem;
private Integer xh;
public Sv(int id, String name, Float d1, Float d2, Float d3){
this.id = String.format("SV%02d", id);
this.name = chuanhoa(name);
this.diem = (d1*3) + (d2*3) + (d3*2);
// this.diem = (float) ( Math.ceil(this.diem * 100d)/100);
this.diem = (float)Math.round(this.diem/ 8d * 100d) / 100;
}
private String chuanhoa(String a){
String res="";
String[] tmp = a.trim().toLowerCase().split("\\s+");
for(String i : tmp){
String tmp3 = i.toUpperCase();
char x = tmp3.charAt(0);
String tmp2 = "";
tmp2 =tmp2 + x ;
for(int j = 1; j < i.length(); j++) tmp2= tmp2 + i.charAt(j) ;
res = res + tmp2 + " ";
this.xh= 0;
}
return res;
}
public void setTt(int xh){
this.xh = xh;
}
public int getXh(){
return this.xh;
}
public Float getDiem(){
return this.diem;
}
public int compareTo(Sv a){
return this.diem.compareTo(a.diem) == 0 ? this.id.compareTo(a.id) : - this.diem.compareTo(a.diem);
}
public String toString(){
return id + " " + name + diem + " " + xh;
}
}
Editor is loading...