Вычисление интеграла методом Симпсона в среде visual c#
Формулировка задачи:
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 simpson { public partial class Form1 : Form { public Form1() { InitializeComponent(); } // Заданная функция double f1 (double x) { return 1/Math.Sqrt(x*x+1.2); } private void button1_Click(object sender, EventArgs e) { /* a и b -границы отрезка, на котором ищется интеграл n – число отрезков h – шаг Q1 – значение интеграла при n=8 Q2 – значение интеграла при n=16 */ double a,b,h,Q1,Q2,Q; int n,i; // объявили переменные a = 0.8; b = 1.6; n = 8; h = (b-a)/n; Q1 = f1(a)+f1(b); double s1=0, s2=0, x=a; for (i=1; i<n; i++) { x += h; if (i%2) // сумма значений функции в точках с нечетными номерами s1 += f1(x); else // сумма значений функции в точках с четными номерами s2 += f1(x); } Q1 = h/3*(Q1+4*s1+2*s2); listBox1.Items.Add(Convert.ToString(Q1)); n = 16; h = (b-a)/n; Q2 = f1(a)+f1(b); s1=0; s2=0; x=a; for ( i=1; i<n; i++) { x += h; if (i % 2) // сумма значений функции в точках с нечетными номерами s1 += f1(x); else // сумма значений функции в точках с четными номерами s2 += f1(x); } Q2 = h/3*(Q2+4*s1+2*s2); listBox2.Items.Add(Convert.ToString(Q2)); Q = Math.Abs(Q1 - Q2) / 15; listBox3.Items.Add(Convert.ToString(Q)); } } } Ошибка: Неявное преобразование типа "int" в "bool" невозможно, ругается на if (i[COLOR="Red"]%[/COLOR]2) Подскажите, что я упустил?
Решение задачи: «Вычисление интеграла методом Симпсона в среде visual c#»
textual
Листинг программы
if (i%2 == 0 или 1)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д