Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Pascal В вещественном массиве А[4][3] найти количество нулевых элементов В вещественном массиве А найти количество нулевых элементов. Результат вывести на экран. https://www.cyberforum.ru/ pascal/ thread2043386.html Pascal Определите возможное количество способов прочтения строки.
Пожалуйста, помогите с написанием программы на паскале! Пользователь вводит произвольную строку из 0 и 1 Определите возможное количество способов прочтения, если a=1; b=0; c=10; d=101
Pascal Сузить текст. https://www.cyberforum.ru/ pascal/ thread2042429.html
Сузить текст, ширина которого была 80 символов до 72 символов с использованием процедуры. помогите пожалуйста . есть код, но не работает. Program lab8 (input, output); var f1,f2:text; str: string; restr: string; i: integer; procedure mydelete(str2:string; var restr2:string); begin delete (str2, length(str2)-7, 8);
Pascal Шпаргалки. Новичок в программировании, и вот хотел бы узнать как на примере этой задачи составить программу в Pascal Задание У Кати и Лены появились кавалеры, которые как оказалось, являются страшными компьютерными фанатами. Они предложили им свою помощь в подготовке к экзаменам. Помощь выразилась в сканировании учебников и последующей печати текстов в уменьшенном варианте. В результате получались... https://www.cyberforum.ru/ pascal/ thread2042410.html
Упорядочивание массива Pascal
Помогите пожалуйста. Даны два числа M и N и два упорядоченных массива: A1<=A2<=...<=AM и В1<=В2<=...<=BN. Образовать из этих элементов упорядоченный массив: C1<=C2<=...<=CM+N Замечание. Эта важная задача принципиально должна быть выполнена за M+N действий. Возьмем из А и В по первому элементу. Меньший из них занесем в С и заменим следующим га того же массива. Снова выберем меньший из двух,...
Pascal Упорядочивания массива методом Дж.фон Неймана Помогите пожалуйста. Написать программу упорядочивания массива методом Дж.фон Неймана, который заключается в следующем: 1) если n=1 (n - количество элементов в массиве), то массив упорядочен; 2) если n>=2, то разбиваем массив на две части: начало и хвост, причем число элементов начала либо равно числу элементов хвоста (если n четное), либо отличается от последнего на 1 (если n нечетное). Далее... https://www.cyberforum.ru/ pascal/ thread2042224.html
Pascal Проверить, будет ли число Фибоначчи с номером 5*k делиться на 5 Помогите, не нашёл тут на форуме такую задачу: Дана последовательность чисел Фибоначчи, определяемая соотношениями: U1=1, U2=1, Un=Un-1+Un-2, n>2. Проверить, будет ли U5k, k=1,2,...,m делиться на 5. https://www.cyberforum.ru/ pascal/ thread2042210.html Pascal Найти среднее значение элементов заданного вещественного массива размером 10
Найти среднее значение элементов заданного вещественного массива размером 10. Элементы массива ввести с клавиатуры. Преобразовать исходный массив, вычитая из каждого элемента среднее значение. Преобразованный массив вывести на экран.
Pascal Вывести пифагоровы числа в заданных интервалах Вывести для заданных интервалов , i=1,2, ..., 20, все пифагоровы числа. https://www.cyberforum.ru/ pascal/ thread2041868.html Pascal Определить, является ли число - числом Армстронга - Pascal https://www.cyberforum.ru/ pascal/ thread2041865.html
Определить, является ли число - числом Армстронга. Я набрала программу, но правильные ответы она не выводит. Вроде всё выполняется верно, и данные получаются нужным, только вместо "да", всё равно выводит "нет". Помогите найти ошибку. program n2; var i,a,k,Q:integer; b:array of integer; s:real; begin writeln('введите число для проверки'); read(a); Q:=a; k:=1; s:=0; while Q>0 do begin
Составить программу нахождения простых делителей числа N Pascal
Составьте программу нахождения простых делителей числа N. (очень простую блок схему для новичка надо) заранее большое спасибо
Pascal Вычислить значение https://www.cyberforum.ru/ pascal/ thread2041525.html
Помогите вычислить значение
0 / 0 / 0
Регистрация: 23.09.2017
Сообщений: 1
0

LU-разложение матрицы с частичным выбором ведущего элемента - Pascal - Ответ 10773928

23.09.2017, 16:53. Показов 2891. Ответов 0
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
После обработки массива выводит NaN, не могу найти ошибку

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
{ФИО: Харламенко Артём Валерьевич
Вариант:9}
Program lr6_2;
const n = 4;
type rmatr = array[1..n, 1..n] of real;
     ivect = array[1..n] of integer;
var i,j:integer;
    A:rmatr;
    ip:ivect;
    eps, det: real;
    ifsolve: boolean;
 
{
Назначение:
Выполняет LU разложение матрицы с частичным выбором
ведущего элемента
ФОРМАЛЬНЫЕ ПАРАМЕТРЫ
 n – размер матрицы А(входной) 
 A – при входе – элементы матрицы А, 
     при выходе – искомые элементы матриц L и U 
 eps – при входе - относительный, 
       при выходе- абсолютный (eps=eps*||A||)
       уровень оценки ведущего элемента 
       как равного нулю 
 ip – массив перестановок строк матрицы А (выходной)
 det – определитель матрицы А (выходной)
 ifsolve – при выходе из подпрограммы равен:  true
           если разложение выполнено успешно,
           false – если хотя бы один ведущий 
           элемент по модулю меньше eps и 
           разложение невозможно
}
Procedure DECOMP_2(n:integer; var A:rmatr; var eps: real;
                    var ip:ivect;
                    var det:real;
                    var ifsolve:boolean);
  label 10;
  var i,j,k,km,ipm: integer;
      s,norm,am: real;
  begin
    ifsolve:=true;
    det:=1.0;
    norm:=0.0;
  
    for i:=1 to n do begin 
      ip[i]:= i;
      s:=0.0;
      for j:=1 to n do s:=s+abs(A[i,j]);
      if norm<s then norm:=s;
    end;
    
    eps := eps*norm;
    
    for k:=1 to n-1 do begin
      am:=abs(A[k,k]);
      km:=k;
      
      for i:=k+1 to n do begin
        if abs(A[i,k])>am then begin
          am:=abs(A[i,k]);
          km:=i;
        end;
        if km<>k then begin
          det := (-det);
          ipm:=ip[km];
          ip[km]:=ip[k];
          ip[k]:=ipm;
          for j:=1 to n do begin
            am := A[km, j];
            A[km,j]:=A[k,j];
            A[k,j]:=am;
          end;
        end;
      end;
    
     if abs(A[k,k])<eps then begin 
       ifsolve:=false; 
       goto 10; 
     end;
     
     for i:=1 to n do begin 
      am:=A[i,k]/A[k,k];
      A[i,k]:=am;
      for j:=1 to n do A[i,j]:=A[i,j]-am*A[k,j];
      end;
     end;
     
  10: if ifsolve and (abs(A[n,n])>= eps) then
        for k:=1 to n do det:=det*A[k,k] else det:=0.0;
  
  end;
  
begin // основной блок программы
for i:=1 to n do
  for j:=1 to n do begin
  //write('A[',i,',',j,']= ');
  //readln(A[i,j]);
  A[i,j]:=4;
  end;
det:=1.0;
//write('Введите точность вычисления eps= ');
//readln(eps);
eps:=0.000001;
DECOMP_2(n, A,eps,ip,det,ifsolve);
writeln('Определитель= ',det); // выводим определитель
writeln('U',a); // печатаем ступенчатый вид матрицы
writeln('Массив перестановок', ip); 
end.


Вернуться к обсуждению:
LU-разложение матрицы с частичным выбором ведущего элемента Pascal
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.09.2017, 16:53
Готовые ответы и решения:

Метод Гаусса с частичным выбором главного элемента
Как написать прогамму методом Гаусса с частичным выбором главного элемента. Помогите пожалуйста...

Решение СЛАУ методом Гаусса с выбором ведущего элемента
1) Написать вычислительную программу на языке программирования С++ для решения СЛАУ методом Гаусса...

Каков Метод Жордана решения СЛАУ : обратный, с выбором ведущего элемента по столбцу ?
Интересует точное описание метода!!! Дали задание в универе закодить этот метод, но не нашел вообще...

Решить систему ЛАУ Ax=f используя схему Гаусса с выбором ведущего элемента по всей матрице
Решить систему ЛАУ Ax=f используя схему Гаусса с выбором ведущего элемента по всей матрице...

0
23.09.2017, 16:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.09.2017, 16:53
Помогаю со студенческими работами здесь

СЛАУ методом Гаусса с поиском ведущего элемента по всей матрице
Методом Гаусса все легко получилось, но вот только задание у меня включает поиск ведущего элемента...

Реализовать разложение на произведение ортогональной матрицы и нижней треугольной матрицы с единичной диагональю
Доброго времени суток! Подскажите или помогите, пожалуйста, как реализовать разложение на...

Найти отношение минимального элемента матрицы A(n,m) и максимального элемента матрицы B(k,p)
Найти отношение минимального элемента матрицы A(n,m) и максимального элемента матрицы B(k,p) ...

Метод вращений с выбором оптимального элемента
Помогите найти ошибку... Вроде бы, считает правильно, но при точности меньшей чем 0.1. Если...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru