Войти
Регистрация
Спроси ai-bota
В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
Показать больше
Показать меньше
DimanGuy32
06.04.2022 20:36 •
Информатика
Написать программу в с++ решения линейных уравнений методом неполной релаксации ! )
Показать ответ
Ответ:
JaspeR9
19.06.2020 07:49
#include<iostream.h>
#include<math>
int maximal(int n, double R0[]){
int i,f;
f=0.0;
for(i=0;i<n-1;i++){
if(R0[i+1]>R0[i]) f=i+1;
}
return f;
}
void main(){
int i,j,n,f,k,iter;
double S,det;
cout<<"Vvedite razmer kvadratnoy matrici= ";
cin>>n;
double *x=new double [n];
double **b=new double *[n];
for(i=0;i<n;i++)
b[i]=new double[n+1];
double **a=new double *[n];
for(i=0;i<n;i++)
a[i]=new double[n+1];
cout<<"Vvedite kolichestvo iteraciy:";
cin>>iter;
cout<<"Vvedite matritcu";
for(i=0;i<n;i++){
for(j=0;j<=n;j++)
cin>>b[i][j];
}
cout<<"podgotovka k relaksatcii...\n";
for(i=0;i<n;i++){
for(j=0;j<n;j++)
a[i][j]=-b[i][j]/b[i][i];
a[i][n]=b[i][n]/b[i][i];
}
for(i=0;i<n;i++){
for(j=0;j<n+1;j++)
cout<<" "<<a[i][j]<<" || ";
cout<<"\n";
}
double *x0=new double [n];
for(i=0;i<n;i++)
x[i]=0.0;
double *R0=new double [n];
cout<<"Vvedite znachenie nachal`nih priblizheniy:\n";
for(i=0;i<n;i++)
cin>>x0[i];
S=0.0;
for(i=0;i<n;i++){
for(j=0;j<n;j++)
S=S+a[i][j]*x0[i];
}
for(i=0;i<n;i++){
R0[i]=a[i][n]-x0[i]+S;
cout<<"R("<<i<<")="<<R0[i]<<" | ";
}
f=maximal(n,R0);
det=R0[f];
for(k=0;k<iter;k++){
cout<<"det{"<<k<<"}="<<det<<"\n";
for(i=0;i<n;i++){
if(i!=f) R0[i]=R0[i]+a[i][f]*det;
else R0[i]=R0[i]-det;
}
for(i=0;i<n;i++)
cout<<"R["<<i+1<<"]="<<R0[i]<<" ";
x[f]=x[f]+det;
f=maximal(n,R0);
det=R0[f];
}
cout<<"\n";
for(i=0;i<n;i++)
cout<<"X{"<<i+1<<"}="<<x[i]<<"\n";
delete []x;
delete []R0;
delete []x0;
delete []a;
cin.get();
cin.get();
}
0,0
(0 оценок)
Популярные вопросы: Информатика
kornev183
04.03.2023 03:25
СОСТАВИТЬ ПРОГРАММУ НА ЯЗЫКЕ ПАСКАЛЬ нужна Составить программу. Из 800 учащихся школы на данный момент посещают школу N человек. Определить, через сколько дней число посещающих школу...
helpmepleasehelp1
02.02.2023 20:20
Задача 1. Найти сумму элементов списка (1,2,3,4,5), начиная с первого отрицательного Задача 2. В примере, с цикла while, формируются два списка A и B разными Задача 3. Дано вещественное...
Radigon
23.03.2022 11:49
опишите с указанием обозначения, допустимого значения и области занимаемой памяти тип данных вещественный ...
Sherlokzn
28.09.2020 12:36
Каков информационный объём сообщения Я люблю решать задачи по информатике! при условии, что один символ кодируется одним байтом и соседние слова разделены одним пробелом? ответ дайте...
Denis12121210
27.09.2020 10:53
Ввести числа а и Ь. Если число а меньше либо равно b, то вычислить частное аљ, иначе произведение а и Ь. Вывести полученный результат....
debdh
07.01.2023 12:04
Объектами изучения в информатике являются: (может быть несколько вариантов ответа! ) разработка дизайна ноутбука аппаратное и программное обеспечение информационный процесс развитие...
arkasha27
31.03.2023 17:48
сор по информатике люди добрые...
025858
26.11.2021 16:39
35 сделайте с ! проводится две лотереи: «6 из 36» и «5 из 64». сообщение о результатах какой из лотерей несет больше информации? повторяю мне надо решение данной и ответ...
garachuk75
09.09.2022 05:18
Выполните арифметическую операцию сложения чисел 110 и 100. решение столиком. заранее ! ...
anastasijakokos
07.08.2021 23:30
Задано отношение, в котором один объект находится в отношениях с другим объектом: андрей выше владимира. найди имя отношения, которое обозначает характер связи. выше андрей владимира...
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку
О НАС
О нас
Блог
Карьера
Условия пользования
Авторское право
Политика конфиденциальности
Политика использования файлов cookie
Предпочтения cookie-файлов
СООБЩЕСТВО
Сообщество
Для школ
Родителям
Кодекс чести
Правила сообщества
Insights
Стань помощником
ПОМОЩЬ
Зарегистрируйся
Центр помощи
Центр безопасности
Договор о конфиденциальности полученной информации
App
Начни делиться знаниями
Вход
Регистрация
Что ты хочешь узнать?
Спроси ai-бота
#include<math>
int maximal(int n, double R0[]){
int i,f;
f=0.0;
for(i=0;i<n-1;i++){
if(R0[i+1]>R0[i]) f=i+1;
}
return f;
}
void main(){
int i,j,n,f,k,iter;
double S,det;
cout<<"Vvedite razmer kvadratnoy matrici= ";
cin>>n;
double *x=new double [n];
double **b=new double *[n];
for(i=0;i<n;i++)
b[i]=new double[n+1];
double **a=new double *[n];
for(i=0;i<n;i++)
a[i]=new double[n+1];
cout<<"Vvedite kolichestvo iteraciy:";
cin>>iter;
cout<<"Vvedite matritcu";
for(i=0;i<n;i++){
for(j=0;j<=n;j++)
cin>>b[i][j];
}
cout<<"podgotovka k relaksatcii...\n";
for(i=0;i<n;i++){
for(j=0;j<n;j++)
a[i][j]=-b[i][j]/b[i][i];
a[i][n]=b[i][n]/b[i][i];
}
for(i=0;i<n;i++){
for(j=0;j<n+1;j++)
cout<<" "<<a[i][j]<<" || ";
cout<<"\n";
}
double *x0=new double [n];
for(i=0;i<n;i++)
x[i]=0.0;
double *R0=new double [n];
cout<<"Vvedite znachenie nachal`nih priblizheniy:\n";
for(i=0;i<n;i++)
cin>>x0[i];
S=0.0;
for(i=0;i<n;i++){
for(j=0;j<n;j++)
S=S+a[i][j]*x0[i];
}
for(i=0;i<n;i++){
R0[i]=a[i][n]-x0[i]+S;
cout<<"R("<<i<<")="<<R0[i]<<" | ";
}
f=maximal(n,R0);
det=R0[f];
for(k=0;k<iter;k++){
cout<<"det{"<<k<<"}="<<det<<"\n";
for(i=0;i<n;i++){
if(i!=f) R0[i]=R0[i]+a[i][f]*det;
else R0[i]=R0[i]-det;
}
for(i=0;i<n;i++)
cout<<"R["<<i+1<<"]="<<R0[i]<<" ";
x[f]=x[f]+det;
f=maximal(n,R0);
det=R0[f];
}
cout<<"\n";
for(i=0;i<n;i++)
cout<<"X{"<<i+1<<"}="<<x[i]<<"\n";
delete []x;
delete []R0;
delete []x0;
delete []a;
cin.get();
cin.get();
}