Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 31.01.2012
Сообщений: 47
1

Решение алгебраических (линейных) уравнений

08.05.2013, 12:54. Показов 2261. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здесь вышла ошибка "вещественное деление на 0 (Program3.pas, строка 17)". Кто сможет поправить? Заранее большое спасибо!
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
program lab_3;      {метод Лина}
const n=4;
var a4,a3,a2,a1,a0,x,p,q,b4,b3,b2,b1,b0:real;
 
begin
 a4:=1;   {начальные значения коэффициентов}
 a3:=1;
 a2:=0;
 a1:=2;
 a0:=1;
 repeat
  b4:=a4;
  b3:=a3-p*b4;
  b2:=a2-p*b3-q*b4;
  b1:=a1-p*b2-q*b3;
  b0:=a0-p*b1-q*b2;
  p:=(a1-q*b3)/b2;
  q:=a0/b2;
 until ((ABS(a4-b4)<n) AND (ABS(a3-p*b4)-(b3)<n) AND (ABS(a2-p*b3-q*b4)-(b2)<n) AND (ABS(a1-p*b2-q*b3)-(b1)<n) AND (ABS(a0-p*b1-q*b2)-(b0)<n));
 x:=a4*(x*x*x*x)+a3*(x*x*x)+a2*(x*x)+a1*x+a0*1;
   writeln('x=',x:0:5);
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.05.2013, 12:54
Ответы с готовыми решениями:

Решение линейных алгебраических уравнений методом Гаусса
Помогите пожалуйста составить программу. Короче, нужно составить программу для решения с заданной...

Сортировка и Решение системы линейных алгебраических уравнений, Метод Гаусса
Программа должна выполнять сортировку данных смешанного типа, одной из следующих структур:...

Система линейных алгебраических уравнений (метод Зейделя)
Помогите нужно решить систему методом Зейделя я то пробовал у меня выдает ошибку в чем ошибка? ...

Решения систем линейных алгебраических уравнений методом Крамера и Блочным
Нужно написать код решения систем линейных алгебраических уравнений методом Крамера и...

2
130 / 54 / 27
Регистрация: 13.03.2013
Сообщений: 162
13.05.2013, 00:45 2
При первой попытке выполнения цикла repeat твои переменные принимают значения:
b4 = a4 = 1
b3 = a3 - p*b4 = 1 - 0*1 = 1
b2 = a2 - p*b3 - q*b3 = 0 - 0*1 - 0*1 = 0 (! вот тут собственно и ошибка, потому что потом идет p = (a1 - q*b3)/b2 = (2 - 0*1)/0 - вот и оно, деление на ноль)

Решение - рассчитать или узнать еще каким-либо способом начальные значения p и q и сообщить программе перед началом выполнения цикла.
0
Я не экстрасенс
382 / 339 / 34
Регистрация: 22.01.2013
Сообщений: 1,126
13.05.2013, 00:47 3
Сейчас уже не могу вспомнить суть метода Лина (давно это было!), но вот что пишет Его Величество Интернет: "Метод Лина может не привести к нахождению делителя"
Похоже, с оглядкой на строчки 17 и 18 надо сделать оговорку - если b2=0, то решения нет
0
13.05.2013, 00:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.05.2013, 00:47
Помогаю со студенческими работами здесь

Приближенное решение алгебраических и трансцендентных уравнений
Помогите пожалуйста!

Численное решение нелинейных алгебраических уравнений методом половинного деления
Численное решение нелинейных алгебраических уравнений методом половинного деления уравнение вот...

Решение линейных уравнений
В школе задали сделать программу, которая будет считать линейные уравнения. Но я по просту не...

Решение системы линейных уравнений
___/sin^2x * cos x, если x&lt;0.1, x=3; y=|x+2, если 0.1&lt;x&lt;1, x&gt;4; ___\cos x /2x, в остальных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru