.NET 4.x Рассчитать функцию y(x) в зависимости от введенного параметра А - C#
Формулировка задачи:
Здравствуйте, мне необходима помощь), любая). Мне нужно сделать программку не большую (по учёбе). Которая будет высчитывать значение функции. У меня есть сама функция, и диапазон изменения аргумента x. А так же указаны компоненты для ввода, вывода параметра А, и для вывода показателей.
Функция выглядит так
Диапазон изменения аргумента x[-4 ,2] шаг 0,5
Компоненты для ввода(
ComboBox
) и вывода(DataGredView
) параметра А Компоненты для вывода показателейRichTextBox
Опыт у меня никакой(, хочу научится, помогите чем можете пожалуйста. Т.к. у меня нет никаких примеров подобного рода кода, я хотя бы разберу любой какой вы дадите. Искал по форуму, но не уверен что те ф-ии похожи на мою, а из-за незнания тонкостей опасаюсь напортачить чего и сделать не так. p.s.e
в функции это как я понимаю число Эйлера равное 2.71 (т.к. я заочник у меня нет возможности уточнить у преподавателя, в связи с характером и отношением самого преподавателя))Решение задачи: «.NET 4.x Рассчитать функцию y(x) в зависимости от введенного параметра А»
textual
Листинг программы
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace OmegaV { public partial class Form1 : Form { public Form1() { InitializeComponent(); label1.Text = "А"; button1.Text = "Рассчитать"; comboBox1.Items.Add("-4"); comboBox1.Items.Add("-1"); comboBox1.Items.Add("3"); comboBox1.SelectedItem = comboBox1.Items[0]; button1.Click+=new EventHandler(button1_Click); } void button1_Click(object sender, EventArgs e) { int A = int.Parse(comboBox1.Text); List<double> resultList = new List<double>(); double[] x = { -4, -3.5, -3, -2.5, -2, -1.5, -1, -0.5, 0, 0.5, 1, 1.5, 2 }; switch (A) { case -4: resultList.AddRange(res1(A,x)); break; case -1: resultList.AddRange(res2(A,x)); break; case 3: resultList.AddRange(res3(A,x)); break; } DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("Значение х")); dt.Columns.Add(new DataColumn("Результат")); for (int j = 0; j < resultList.Count; j++) { dt.Rows.Add(); dt.Rows[j].SetField(dt.Columns[0], x[j].ToString()); dt.Rows[j].SetField(dt.Columns[1], resultList[j].ToString()); } dataGridView1.DataSource = dt; } List<double> res1(int A,double[]x) { List<double> data = new List<double>(); for(int i=0;i<x.Length;i++) { data.Add(A + Math.Log(Math.Pow(x[i], 2))); } return data; } List<double> res2(int A, double[] x) { List<double> data = new List<double>(); for (int i = 0; i < x.Length; i++) { data.Add((Math.Pow(x[i], 3) - A) / 10); } return data; } List<double> res3(int A, double[] x) { List<double> data = new List<double>(); for (int i = 0; i < x.Length; i++) { data.Add(Math.Pow(Math.E, (x[i] * A))); } return data; } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д