Сделать в питоне задачи: 1) По заданным значениям размера двумерного массива, задать
значения элементов случайным образом. Вывести элементы, значение
которых кратно 3, не больших числа 8.
2) В заданной действительной квадратной матрице порядка n*n найти
сумму элементов строки, в которой расположен элемент с наименьшим
значением.
3) Найти сумму арифметической прогрессии из 13 элементов, зная
значение первого элемента и разность.
Ответы на вопрос:
#include "stdafx.h"
#include "iostream"
#include "vector"
#include "cmath"
#include "locale.h"
using namespace std;
int main()
{
// Считываем размер вводимой матрицы
setlocale(LC_ALL, "rus");
int size;
cout << "Введите размер вводимой матрицы: ";
cin >> size;
cout << endl;
// Будем хранить матрицу в векторе, состоящем из
// векторов вещественных чисел
vector <vector <long double> > matrix;
// Матрица будет иметь размер (size) x (size + 1),
// c учетом столбца свободных членов
matrix.resize (size);
cout << "Введите элементы матрицы " << size << "x" << size+1 <<":" <<endl;
for (int i = 0; i < size; i++)
{
matrix[i].resize (size + 1);
for (int j = 0; j < size + 1; j++)
{
cin >> matrix[i][j];
}
}
// Считываем необходимую точность решения
long double eps;
cout << endl;
cout << "Введите точность решения: ";
cin >> eps;
// Введем вектор значений неизвестных на предыдущей итерации,
// размер которого равен числу строк в матрице, т.е. size,
// причем согласно методу изначально заполняем его нулями
vector <long double> previousVariableValues (size, 0.0);
// Будем выполнять итерационный процесс до тех пор,
// пока не будет достигнута необходимая точность
while (true)
{
// Введем вектор значений неизвестных на текущем шаге
vector <long double> currentVariableValues (size);
// Посчитаем значения неизвестных на текущей итерации
// в соответствии с теоретическими формулами
for (int i = 0; i < size; i++)
{
// Инициализируем i-ую неизвестную значением
// свободного члена i-ой строки матрицы
currentVariableValues[i] = matrix[i][size];
// Вычитаем сумму по всем отличным от i-ой неизвестным
for (int j = 0; j < size; j++)
{
if (i != j)
{
currentVariableValues[i] -= matrix[i][j] * previousVariableValues[j];
}
}
// Делим на коэффициент при i-ой неизвестной
currentVariableValues[i] /= matrix[i][i];
}
// Посчитаем текущую погрешность относительно предыдущей итерации
long double error = 0.0;
for (int i = 0; i < size; i++)
{
error += abs (currentVariableValues[i] - previousVariableValues[i]);
}
// Если необходимая точность достигнута, то завершаем процесс
if (error < eps)
{
break;
}
// Переходим к следующей итерации, так
// что текущие значения неизвестных
// становятся значениями на предыдущей итерации
previousVariableValues = currentVariableValues;
}
// Выводим найденные значения неизвестных с 8 знаками точности
for (int i = 0; i < size; i++)
{
printf ("%.8llf ", previousVariableValues[i]);
}
cout << endl;
system("pause");
return 0;
}
Объяснение:
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
unicorn33722806.11.2022 07:23
-
maxmax613.12.2021 13:42
-
Руфат285628.11.2020 00:54
-
dilnoza5519.12.2022 17:37
-
lissasalvatore09.11.2020 01:52
-
Sergey1521117.08.2022 21:58
-
Obzzzi18.12.2022 02:17
-
alianna36604.05.2023 17:51
-
Любовь120318.10.2021 06:04
-
12345152928.02.2023 18:49
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.