利用函數(shù)公式設(shè)計(jì)一個(gè)數(shù)值模型

一個(gè)游戲,滿級(jí) 100 級(jí),升級(jí)到滿級(jí)需要 2 年的時(shí)間。請(qǐng)利用函數(shù)公式設(shè)計(jì)一個(gè)數(shù)值模型,該數(shù)值模型要求:可以通過(guò)調(diào)整滿級(jí)數(shù)與滿級(jí)時(shí)間這 2 個(gè)參數(shù),自動(dòng)計(jì)算出每級(jí)的升級(jí)經(jīng)驗(yàn)以及各級(jí)所需的升級(jí)天數(shù)。
由題意,需設(shè)計(jì)一系統(tǒng)。該系統(tǒng)輸入為滿級(jí)數(shù)x與滿級(jí)時(shí)間y,輸出為每級(jí)的升級(jí)經(jīng)驗(yàn)z以及各級(jí)所需的升級(jí)天數(shù)k。示意圖如下圖所示:

其中,j代表等級(jí)。即各級(jí)所需升級(jí)天數(shù)和每級(jí)升級(jí)經(jīng)驗(yàn)均為等級(jí)j的函數(shù)。且由題意,應(yīng)滿足下式:

且有:

即各級(jí)所需升級(jí)天數(shù)的和,應(yīng)等于給定的滿級(jí)所需要的時(shí)間y。
設(shè):

其中:

由題意,設(shè)x為100(級(jí)),y為730(天),也就是兩年。?。?/span>

在MATLAB 2018b平臺(tái)進(jìn)行仿真,得到仿真結(jié)果如下。MATLAB代碼見(jiàn)附錄四。
?

由該模型可得,升第1級(jí)所需時(shí)間為37.4748秒,升第100級(jí)所需時(shí)間為66.4078天。
取w正比于z,即滿足:

設(shè)比例系數(shù)為k,即滿足:

取升第1級(jí)時(shí)所需經(jīng)驗(yàn)值為100,代入式(7),解得:

則有

在MATLAB平臺(tái)進(jìn)行仿真,得到其示意圖如下圖所示:

?解畢。
MATLAB程序如下:
第一幅圖(升級(jí)所需天數(shù)對(duì)于等級(jí)的函數(shù)圖像)代碼:
x = 100; ?%滿級(jí)數(shù)
y = 730; ?%滿級(jí)時(shí)間,730天,即兩年
beta = 1.1;
lamuda = 1.01;
j = 1 : 100;
z = beta.^j - lamuda;
sumz = sum(z);
alpha = 730/sumz;
z = alpha * ( beta.^j - lamuda );
%z = 20 .* log(z + 10) - 45.5;
sum(z)
figure(1);
bar(j,z);
set(gca,'fontsize',26);
xlabel('等級(jí)','fontsize',26);
ylabel('升級(jí)所需時(shí)間/天','fontsize',26);
?
第二幅圖(每級(jí)升級(jí)經(jīng)驗(yàn)對(duì)于等級(jí)的函數(shù)圖像)代碼:
x = 100;%滿級(jí)數(shù)
y = 730;%滿級(jí)時(shí)間,730天,即兩年
ys = 100;%假設(shè)升第一級(jí)需要經(jīng)驗(yàn)數(shù)為100
beta = 1.1;
lamuda = 1.01;
j = 1 : 100;
z = beta.^j - lamuda;
sumz = sum(z);
alpha = 730/sumz;
z = alpha * ( beta.^j - lamuda );
w = ( ys / z(1) ) .* z;
%z = 20 .* log(z + 10) - 45.5;
sum(z)
figure(1);
bar(j,w,'red');
set(gca,'fontsize',26);
xlabel('等級(jí)','fontsize',26);
ylabel('每級(jí)升級(jí)經(jīng)驗(yàn)','fontsize',26);