Система нелинейных уравнений - C#
Формулировка задачи:
добрый вечер!задали задание решить систему нелинейных уравнений методами якоби и гаусса-зейделя.
в уравнении присутствует параметр "а".
так вот если я меняю а,х0 или у0 - х и у же тоже должны меняться?хотя бы незначительно а у меня стабильно выдаёт х=1 у=1.
подскажите, где ошибся?
если подставить уравнение которое закомментировано то всё хорошо получается...
Листинг программы
- 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 WindowsFormsApplication2
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- private void button1_Click(object sender, EventArgs e)
- {
- double x, y, x0, y0,a ;
- x = 1054636;
- y = 1064636;
- a = 5;
- do
- {
- x0 = x;
- y0 = y;
- // x = (Math.Sin(Math.Sqrt(Math.Abs(1 - y * y)) + y) - 0.1) / 1.2;
- // y = Math.Sqrt(1 - x * x);
- x= Math.Pow(y*y*y + (6 + a) * y - 2 ,1/3);
- y = Math.Pow((6 + a) * x - 3 - x*x*x , 1 / 3);
- }
- while ((Math.Abs(x - x0) > 0.0001) && (Math.Abs(y - y0) > 0.0001));
- textBox1.Text = Convert.ToString(x);
- textBox2.Text = Convert.ToString(y);
- }
- private void button2_Click(object sender, EventArgs e)
- {
- double x, y, x0, y0,a;
- x = 0.5;
- y = 0.5;
- a = 1;
- do
- {
- x0 = x;
- y0 = y;
- x = Math.Pow(y * y * y + (6 + a) * y - 2, 1 / 3);
- y = Math.Pow((6 + a) * x0 - 3 - x0 * x0 * x0, 1 / 3);
- // y = Math.Sqrt(Math.Abs(1 - x0 * x0));
- // x = (Math.Sin(Math.Sqrt(Math.Abs(1 - y * y)) + y) - 0.1) / 1.2;
- }
- while ((Math.Abs(x - x0) > 0.0001) && (Math.Abs(y - y0) > 0.0001));
- textBox3.Text = Convert.ToString(x);
- textBox4.Text = Convert.ToString(y);
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- }
- }
- }
Решение задачи: «Система нелинейных уравнений»
textual
Листинг программы
- x = Math.Pow(y * y * y + (6 + a) * y - 2, (double)1 / 3);
- y = Math.Pow((6 + a) * x0 - 3 - x0 * x0 * x0, (double)1 / 3)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д