import java.io.*;
class yrank{
String[] title=new String[10000];
String[] station=new String[10000];
String[] time=new String[10000];
String[] part=new String[10000];
int[] year=new int[10000];
int[] ratenumber=new int[10000];
double[][] rate=new double[10000][100];
double[] avg=new double[10000];
double r1;
int[] rank=new int[101];
int s,sx,datanumber;
int key,y;
public static void main(String [] args) {
yrank test=new yrank();
}
yrank(){
key=0;
getdata(key);
System.out.println(datanumber);
for(s=1;s<datanumber+1;s++){
r1=0;
for(sx=1;sx<ratenumber[s]+1;sx++){
r1=r1+rate[s][sx];
}
avg[s]=0;
if(ratenumber[s]>0)avg[s]=(double)r1/ratenumber[s];
}
y=2009;
ranking(y);
writefile("rank.txt");
}
void writefile(String file){
try{
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file)));
for(s=1;s<21;s++){
sx=rank[s];
pw.print(s);
pw.print(",");
pw.print(year[sx]);
pw.print(",");
pw.print(part[sx]);
pw.print(",");
pw.print(title[sx]);
pw.print(",");
pw.println(avg[sx]);
}
System.out.println("ファイルに書きこみました。");
pw.close();
} catch(IOException ep){ System.out.println("入出力エラーです。"); }
}
void ranking(int y){
int r,s,sx,h;
double maxr;
int[] ch=new int[10000];
for(r=1;r<21;r++){
maxr=0;
sx=0;
for(s=1;s<datanumber+1;s++){
h=0;
if(avg[s]>maxr)h=h+1;
if(ch[s]<50)h=h+1;
if(year[s]==y)h=h+1;
if(h==3)maxr=avg[s];
if(h==3)sx=s;
}
ch[sx]=100;
rank[r]=sx;
}
}
void getdata(int key){
catchdata sub2=new catchdata();
if(key>50)sub2.makedata();
xml sub=new xml();
sub.makedata();
datanumber=sub.datanumber;
title=sub.title;
station=sub.station;
time=sub.time;
year=sub.year;
part=sub.part;
rate=sub.p;
ratenumber=sub.pnumber;
}
}
最終更新:2011年07月26日 00:25