Составить блок схему для программы моделирования инфляции - C#
Формулировка задачи:
Составить программу модели инфляции при которой задаются массив количества товаров потребительской корзины, их стоимость на начало периода и на его конец, затем вычисляется сумма всей корзины S1 и S2. Показатели инфляции вычисляются по формулам:
Индекс инфляции ii=S2/S1,
Темп инфляции ti=ii-1
Уровень инфляции ti в %.
При запуске программы вводятся банковские процентные ставки для простых процентов и сложных при помощи функции InputBox для расчета ставок с учетом инфляции. Последние вычисляются по формулам: для простых процентов iip=((1+n*ip)*ii-1)/n, для сложных iis=(1+is)nii(1/n)-1. Реальная доходность находится по формулам: для простых процентов dp=(n*iip+1-ii)/ii, для сложных процентов ds=(1+iis)/ii(1/n)-1. Кнопка «Данные» введена для проверки правильности ввода данных.
Решение задачи: «Составить блок схему для программы моделирования инфляции»
textual
Листинг программы
private void button2_Click(object sender, EventArgs e)
{
int n1 = Convert.ToInt16(textBox1.Text);
int n2 = Convert.ToInt16(textBox4.Text);
int n3 = Convert.ToInt16(textBox7.Text);
int n4 = Convert.ToInt16(textBox10.Text);
int n5 = Convert.ToInt16(textBox13.Text);
int n6 = Convert.ToInt16(textBox16.Text);
int n7 = Convert.ToInt16(textBox19.Text);
int n8 = Convert.ToInt16(textBox22.Text);
int b1 = Convert.ToInt16(textBox2.Text);
int b2 = Convert.ToInt16(textBox5.Text);
int b3 = Convert.ToInt16(textBox8.Text);
int b4 = Convert.ToInt16(textBox11.Text);
int b5 = Convert.ToInt16(textBox14.Text);
int b6 = Convert.ToInt16(textBox17.Text);
int b7 = Convert.ToInt16(textBox20.Text);
int b8 = Convert.ToInt16(textBox23.Text);
int c1 = Convert.ToInt16(textBox3.Text);
int c2 = Convert.ToInt16(textBox6.Text);
int c3 = Convert.ToInt16(textBox9.Text);
int c4 = Convert.ToInt16(textBox12.Text);
int c5 = Convert.ToInt16(textBox15.Text);
int c6 = Convert.ToInt16(textBox18.Text);
int c7 = Convert.ToInt16(textBox21.Text);
int c8 = Convert.ToInt16(textBox24.Text);
int ii, S2, S1, ti, ti1, iip, iis, dp, ds, n;
int iS; //банковская процентная ставка сложная %
int ip; //банковская процентная ставка простая %
/*Индекс инфляции ii=S2/S1,
*Темп инфляции ti=ii-1
*простых процентов iip=((1+n*ip)*ii-1)/n
* для сложных iis=(1+is)nii(1/n)-1
* Реальная доходность простые% dp=(n*iip+1-ii)/ii
* Реальная доходность сложные% ds=(1+iis)/ii(1/n)-1
* сумма всей корзины S1 и S2
*/
S1 = n1 * b1 + n2 * b2 + n3 * b3 + n4 * b4 + n5 * b5 + n6 * b6 + n7 * b7 + n8 * b8;// сумма S1
S2 = n1 * c1 + n2 * c2 + n3 * c3 + n4 * c4 + n5 * c5 + n6 * c6 + n7 * c7 + n8 * c8;// сумма S2
ii = S2 / S1; // индекс инфляции
label39.Text = ("" + ii);
ti = ii - 1; // темп инфляции
label41.Text =("" +ti);
ti1= ti*100;
label43.Text=(ti1+"%");// вывод уровня инфляции
n= n1+n2+n3+n4+n5+n6+n7+n8; // n= общее кол-во товаров и услуг
iip = ((1 + n * ip) * ii - 1) / n;
label46.Text =(iip+"%");
iis=((1+iS)^n)*ii^((1/n)-1);
label51.Text =(iis+"%");
dp=(n*iip+1-ii)/ii; //Доходность простого %
label48.Text =(dp+"%");
ds=(1+iis)/ii^((1/n)-1); //Доходность сложного %
label53.Text =(ds+"%");
}