package p2;
import tool.*;
import java.io.*;
public class pro {
int s,datanumber;
String[] data=new String[6000];
int[][] mat=new int[100][100];
String[] credit=new String[6000];
String[] bus=new String[600];
int[] y=new int[100];
int[] v=new int[100];
int[] vs=new int[100];
double[][] io=new double[100][100];
double[][] a=new double[100][100];
int[] c=new int[100];
int number;
int[] delta=new int[60];
String[] sig=new String[60];
double[] d=new double[60];
public static void main(String[] args) {
pro test=new pro();
}
pro(){
delta[ 1 ]= 1 ;
delta[ 2 ]= 2 ;
delta[ 3 ]= 3 ;
delta[ 4 ]= 4 ;
delta[ 5 ]= 5 ;
delta[ 6 ]= 6 ;
delta[ 7 ]= 7 ;
delta[ 8 ]= 8 ;
delta[ 9 ]= 9 ;
delta[ 10 ]= 9 ;
delta[ 11 ]= 10 ;
delta[ 12 ]= 11 ;
delta[ 13 ]= 12 ;
delta[ 14 ]= 13 ;
delta[ 15 ]= 14 ;
delta[ 16 ]= 15 ;
delta[ 17 ]= 16 ;
delta[ 18 ]= 17 ;
delta[ 19 ]= 18 ;
delta[ 20 ]= 19 ;
delta[ 21 ]= 20 ;
delta[ 22 ]= 23 ;
delta[ 23 ]= 24 ;
delta[ 24 ]= 25 ;
delta[ 25 ]= 21 ;
delta[ 26 ]= 22 ;
delta[ 27 ]= 23 ;
sig[1]="b2";
sig[2]="b3";
sig[3]="b5";
sig[4]="b6";
sig[5]="b7";
sig[6]="b8";
sig[7]="b9";
sig[8]="b10";
sig[9]="b11";
sig[10]="b12";
sig[11]="b13";
sig[12]="b14";
sig[13]="b15";
sig[14]="b16";
sig[15]="b17";
sig[16]="b18";
sig[17]="b19";
sig[18]="b20";
sig[19]="b21";
sig[20]="b22";
sig[21]="b23";
sig[22]="b25";
sig[23]="b26";
sig[24]="b30";
sig[25]="b32";
sig[26]="b33";
sig[27]="b34";
bus[ 1 ]=" 農林水産業 ";
bus[ 2 ]=" 鉱業 ";
bus[ 3 ]=" 食料品 ";
bus[ 4 ]=" 繊維 ";
bus[ 5 ]=" パルプ・紙 ";
bus[ 6 ]=" 化学 ";
bus[ 7 ]=" 石油・石炭製品 ";
bus[ 8 ]=" 窯業・土石製品 ";
bus[ 9 ]=" 一次金属 ";
bus[ 10 ]=" 金属製品 ";
bus[ 11 ]=" 一般機械 ";
bus[ 12 ]=" 電気機械 ";
bus[ 13 ]=" 輸送用機械 ";
bus[ 14 ]=" 精密機械 ";
bus[ 15 ]=" その他の製造工業製品 ";
bus[ 16 ]=" 建設 ";
bus[ 17 ]=" 電気・ガス・水道 ";
bus[ 18 ]=" 卸売・小売 ";
bus[ 19 ]=" 金融・保険 ";
bus[ 20 ]=" 不動産 ";
bus[ 21 ]=" 運輸 ";
bus[ 22 ]=" 情報通信 ";
bus[ 23 ]=" サ-ビス ";
bus[ 24 ]=" 政府サ-ビス ";
bus[ 25 ]=" 対家計民間非営利サ-ビス ";
ken sub2=new ken();
sub2.makedata("22","p2");
v=sub2.v;
credit=sub2.credit;
number=sub2.number;
int sx,sxs;
for(s=1;s<number+1;s++){
sxs=0;
for(sx=1;sx<28;sx++){
if(credit[s].equals(sig[sx]))sxs=delta[sx];
}
if(sxs>0)vs[sxs]=vs[sxs]+v[s];
}
io sub=new io();
sub.makedata();
y=sub.y;
io=sub.io;
for(s=1;s<26;s++){
for(sx=1;sx<26;sx++){
a[s][sx]=io[s][sx]*vs[sx];
}}
writehtml("ren.html");
}
void writehtml(String file){
int s,sx;
try{
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file)));
pw.println("<html>");
pw.println("<head>");
pw.println("<meta charset=\"UTF-8\">");
pw.println("</head>");
pw.println("<body>");
pw.print("<table rules=\"all\">");
pw.print("<tr>");
pw.print("<td>");
pw.print("");
pw.print("</td>");
for(sx=1;sx<26;sx++){
pw.print("<th>");
pw.print(bus[sx]);
pw.print("</th>");
}
pw.println("</tr>");
for(s=1;s<26;s++){
pw.print("<tr>");
pw.print("<th>");
pw.print(bus[s]);
pw.print("</th>");
for(sx=1;sx<26;sx++){
pw.print("<td>");
pw.print((int)a[s][sx]/100);
pw.print("</td>");
}
pw.println("</tr>");
}
pw.print("<tr>");
pw.print("<th>");
pw.print("生産額");
pw.print("</th>");
for(sx=1;sx<26;sx++){
pw.print("<td>");
pw.print((int)vs[sx]/100);
pw.print("</td>");
}
pw.println("</tr>");
pw.println("</table>");
pw.println("</body>");
pw.println("</html>");
System.out.println("ファイルに書きこみました。");
pw.close();
} catch(IOException ep){ System.out.println("入出力エラーです。"); }
}
}
package p2;
import tool.*;
public class io {
int s,datanumber;
String[] data=new String[6000];
int[][] mat=new int[100][100];
String[] index=new String[6000];
int[] y=new int[100];
double[][] io=new double[100][100];
int[][] a=new int[100][100];
int[] c=new int[100];
void makedata(){
readfile sub=new readfile();
sub.makedata("sna.csv","UTF-8");
data=sub.data;
datanumber=sub.datanumber;
int sx;
for(s=2;s<datanumber+1;s++){
data[s]=change(data[s]);
String[] x=data[s].split(",");
index[s-1]=x[0];
for(sx=1;sx<x.length;sx++){
mat[s-1][sx]=numx(x[sx]);
}
}
for(s=1;s<26;s++){
y[s]=mat[32][s];
for(sx=1;sx<26;sx++){
a[s][sx]=mat[s][sx];
}
}
for(s=1;s<26;s++){
int c1=y[s];
for(sx=1;sx<26;sx++){
c1=c1-a[s][sx];
}
c[s]=c1;
}
for(s=1;s<26;s++){
for(sx=1;sx<26;sx++){
io[s][sx]=(double)a[s][sx]/y[sx];
}
}
for(s=1;s<26;s++){
double d1=0;
for(sx=1;sx<26;sx++){
d1=d1+io[s][sx]*y[sx];
}
d1=d1+c[s];
}
}
int numx(String str){
int nx;
nx=0;
try{
nx=Integer.parseInt(str);
}catch (Exception e) {}
return nx;
}
String change(String str){
String str5=str;
int px=str5.indexOf("\"");
while(px>-1){
str5=rev(str5);
px=str5.indexOf("\"");
}
return str5;
}
String rev(String str){
int p1=str.indexOf("\"");
int p2=str.indexOf("\"",p1+1);
String str1=str.substring(0,p1);
String str2=str.substring(p1+1,p2);
String str3=str.substring(p2+1,str.length());
str2=str2.replace(",","");
return str1+str2+str3;
}
}
package p2;
import tool.*;
public class ken {
int s,datanumber;
String[] data=new String[6000];
int[][] mat=new int[100][100];
String[] credit=new String[6000];
int[] y=new int[100];
int[] v=new int[100];
double[][] io=new double[100][100];
int[][] a=new int[100][100];
int[] c=new int[100];
int number;
void makedata(String y1,String p1){
readfile sub2=new readfile();
sub2.makedata("data.csv","UTF-8");
data=sub2.data;
datanumber=sub2.datanumber;
int h,sx;
sx=0;
for(s=1;s<datanumber+1;s++){
String[] x=data[s].split(",");
h=0;
if(x[0].equals(y1))h=h+1;
if(x[1].equals(p1))h=h+1;
if(h==2)sx=sx+1;
if(h==2)credit[sx]=x[2];
if(h==2)v[sx]=numx(x[3]);
}
number=sx;
}
int numx(String str){
int nx;
nx=0;
try{
nx=Integer.parseInt(str);
}catch (Exception e) {}
return nx;
}
double num(String str){
double nx;
nx=0;
try{
nx=Double.parseDouble(str);
}catch (Exception e) {}
return nx;
}
}
最終更新:2016年05月25日 01:46