「コケいろ-Ohgas' Fortune」の編集履歴(バックアップ)一覧はこちら

コケいろ-Ohgas' Fortune」(2010/04/25 (日) 14:24:10) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> struct sHow{ int Kind; double Rate; int Fee; }; struct sData{ int FirstMoney; int Years; int KindNum; sHow How[100]; }; int main(){ int m; // データセット数 double a=1; scanf("%d",&m); for(int i=0 ; i<m ; i++){ sData Data; // 格納 scanf("%d",&Data.FirstMoney); scanf("%d",&Data.Years); scanf("%d",&Data.KindNum); for(int j=0 ; j<Data.KindNum ; j++){ int kind,fee; double rate=0; scanf("%d %lf %d",&kind,&rate,&fee); Data.How[j].Kind = kind; Data.How[j].Rate = rate; Data.How[j].Fee = fee; } // 計算 int max = Data.FirstMoney; for(int j=0 ; j<Data.KindNum ; j++){ int a = Data.FirstMoney; int b; int ruikei = 0; switch( Data.How[j].Kind ){ case 0: // 単利 for(int k=0 ; k<Data.Years ; k++){ b = (int)( a * Data.How[j].Rate ); a = a - Data.How[j].Fee; ruikei += b; } a += ruikei; break; case 1: // 複利 for(int k=0 ; k<Data.Years ; k++){ b = (int)( a * Data.How[j].Rate ); a = a + b - Data.How[j].Fee; } break; } if( a>max ){ max = a; } } printf("%d\n",max); } return 0; }
// #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> struct sHow{ int Kind; double Rate; int Fee; }; struct sData{ int FirstMoney; int Years; int KindNum; sHow How[100]; }; int main(){ int m; // データセット数 double a=1; scanf("%d",&m); for(int i=0 ; i<m ; i++){ sData Data; // 格納 scanf("%d",&Data.FirstMoney); scanf("%d",&Data.Years); scanf("%d",&Data.KindNum); for(int j=0 ; j<Data.KindNum ; j++){ int kind,fee; double rate=0; scanf("%d %lf %d",&kind,&rate,&fee); Data.How[j].Kind = kind; Data.How[j].Rate = rate; Data.How[j].Fee = fee; } // 計算 int max = Data.FirstMoney; for(int j=0 ; j<Data.KindNum ; j++){ int a = Data.FirstMoney; int b; int ruikei = 0; switch( Data.How[j].Kind ){ case 0: // 単利 for(int k=0 ; k<Data.Years ; k++){ b = (int)( a * Data.How[j].Rate ); a = a - Data.How[j].Fee; ruikei += b; } a += ruikei; break; case 1: // 複利 for(int k=0 ; k<Data.Years ; k++){ b = (int)( a * Data.How[j].Rate ); a = a + b - Data.How[j].Fee; } break; } if( a>max ){ max = a; } } printf("%d\n",max); } return 0; }

表示オプション

横に並べて表示:
変化行の前後のみ表示:
記事メニュー
目安箱バナー