
- •Содержание
- •Блок-схема для чтения динамической матрицы из файла …….…..22
- •Формулировка задачи № 1
- •Блок-схема для чтения динамической матрицы из файла
- •1.2 Функция для чтения динамической матрицы из файла
- •1.3 Блок-схема для записи динамической матрицы в файл
- •1.4 Функция для записи динамической матрицы в файл
- •1.5 Блок-схема для вывода динамической матрицы на монитор
- •1.6 Функция для вывода динамической матрицы на монитор
- •1.7 Блок- схема для вывода вектора на монитор
- •1.8 Функция для вывода вектора на монитор
- •1.9 Блок-схема для поиска минимальных элементов среди отритцательных элементов строк с четными номерами матрицы a и формирования из них вектора
- •1.10 Функция для поиска минимальных элементов среди отритцательных элементов строк с четными номерами матрицы a и формирования из них вектора
- •1.11 Блок-схема для главной функции
- •1.12 Листинг программы
- •1.13 Результаты вычислений
- •Формулировка задачи № 2
- •2.1 Блок-схема для чтения динамической матрицы из файла
- •Ifstream &f-поток чтения из файла double **a - массив int n-кол-во строк int m- кол-во столбцов char s[40]-массив для имени файла
- •2.2 Функция для чтения динамической матрицы из файла
- •2.3 Блок-схема для записи динамической матрицы в файл
- •2.4 Функция для записи динамической матрицы в файл
- •2.5 Блок-схема для вывода динамической матрицы на монитор
- •2.6 Функция для вывода динамической матрицы на монитор
- •2.7 Блок-схема для поиска первой строки, не содержащей ни одного положительного элемента
- •2.8 Функция для поиска первой строки, не содержащей ни одного положительного элемента
- •2 .9 Блок- схема для перестановки элементов матрицы
- •2.10 Функция для перестановки элементов матрицы
- •2.11 Блок- схема для главной функции
- •2.12 Листинг программы
- •Результаты вычислений
1.13 Результаты вычислений
Ввести имя файла для чтения матрицы:
D:\BETA\delta.cpp
-2.5 0 3.2 4.1 -6.2
1.1 5 -3.4 -7.2 -10
0.5 -4 2 -3.3 -12
1.7 10 -6.2 -0.17 0
5 5 5 -8 -10
Введите имя файла для записи матрицы:
D:\BETA\delta1.cpp
Вектор из минимальных отритцательных элементов:
-6.2 -12 -10
Введите имя файла для записи вектора:
D:\BETA\delta2.cpp
Для продолжения нажмите любую клавишу . . .
Формулировка задачи № 2
Для выполнения всех действий задачи, данной в варианте, должны быть написаны функции. Матрицы динамические. В тестовом примере матрицу читать из файла, количество строк и столбцов брать равным 5.
Путем перестановки элементов квадратной вещественной матрицы добиться того, чтобы ее максимальный элемент находился в левом верхнем углу, следующий АО величине- в позиции (2, 2), следующий по величине- в позиции (3, 3) и т. д., заполнив таким образом всю главную диаганаль.
Найти номер первой из строк, не содержащих ни одного положительного элемента.
-5 -3.2 12 10 3.1
8.1 3.4 9.9 8.8 7.6
А= -1.2 -5.6 -3.2 -1.1 -0.5
7.1 1.5 3.9 2.8 -4.1
-6.2 -8.1 -1.2 -5.3 -2.6
2.1 Блок-схема для чтения динамической матрицы из файла
Ifstream &f-поток чтения из файла double **a - массив int n-кол-во строк int m- кол-во столбцов char s[40]-массив для имени файла
Выделение ОП под строки и столбцы матрицы
Открыть файл для чтения
f.open(s)
Проверка успешности открытия файла
i=0
j=0
Ввод координат
f >> a[i][j]
j++
j<m
да
i++
нет
i<n
да
1
1
закрытие файла f.close()
return a
2.2 Функция для чтения динамической матрицы из файла
double ** inputmf(ifstream &f,int n, int m, char s[40])
{//Объявление указателей и перемнных
int i,j; double **a;
//Выделение ОП под строки и столбцы матрицы
a=new double *[n];
if(a==NULL){cout<<"\n Не хватает оперативной памяти под строки";
exit(1);
}
for(i=0;i<n;i++)
{a[i]=new double[m];
if(a[i]==NULL){cout<<"\n Не хватает оперативнйо памяти под столбцы";
exit(1);
}
}
//Открытие файла для чтения
f.open (s);
//Проверка успешности открытия файла для чтения
if (f.fail()) {cout<<"\n Ошибка открытия файла";
exit(1);
}
for(i=0;i<n;i++)
{for(j=0;j<m;j++)
f>>a[i][j];
}
//Закрытие файла
f.close();
return a;
}