Стоимость: 350 руб.
Содержание
Условие задачи
Выбор функций, назначение функций
Шаблоны функций
Состав данных функции main
Блок-схема алгоритма функции main
Описание данных функции обработки
Блок-схема алгоритма функции count_of_rows
Код консольного приложения с подпрограммами
Код консольного приложения с динамической матрицей
Описание класса и методов
Код консольного приложения с использованием класса
Описание классов и методов
Код консольного приложения с использованием класса-наследника
Заключение
Список литературы
…Нужна такая же работа?
Оставь заявку и получи бесплатный расчет
Несколько простых шагов
Оставьте бесплатную заявку. Требуется только e-mail, не будет никаких звонков
Получайте предложения от авторов
Выбирете понравившегося автора
Получите готовую работу по электронной почте
На странице представлен фрагмент
Реши любую задачу с помощью нейросети.
Выбор функций, назначение функций
Алгоритм вычисления количества строк, произведение элементов которых больше определенного значения, одинаков (с точностью до обозначений и констант) для матриц A, B. Поэтому вычисление этих значений следует оформить как функцию (назовем ее count_of_rows), а затем применить ее два раза к конкретным (фактическим) матрицам A, B с различными значениями параметра Q (для матрицы A выбирается Q, равное единице). Алгоритм ввода одинаков для всех матриц, поэтому ввод также оформим как функцию (с названием input).
…
Код консольного приложения с подпрограммами
#include
#include
#include
using namespace std;
/* Функция ввода матрицы */
void input(float mat[][7], int n, int m)
{
int i, j;
for (i = 0; i < n; i++)
{
for (j = 0; j < m; j++)
cin >> mat[i][j];
}
}
/* Функция обработки */
int count_of_rows(float mat[][7], int n, int m, float q)
{
int i, j, count = 0, prod;
for (i = 0; i < n; i++)
{
prod = 1;
for (j = 0; j < m; j++)
prod *= mat[i][j];
if (prod > q)
count++;
}
return count;
}
int main()
{
setlocale(LC_ALL, “rus”);
float A[7][7], B[7][7]; // A[3][7], B[4][5]
float Q;
cout << "Введите элементы матрицы A. " << endl;
input(A, 3, 7);
cout << endl << "Число строк, произведение элементов которых больше 1, равно " << count_of_rows(A, 3, 7, 1) << endl;
cout << endl << "Введите элементы матрицы B.
...
Код консольного приложения с динамической матрицей
#include
using namespace std;
/* Функция ввода и выделения памяти под матрицу */
float** input(int n, int m)
{
int i, j;
float **mat;
mat = new float*[n];
for (i = 0; i < n; i++)
{
mat[i] = new float[m];
for (j = 0; j < m; j++)
cin >> mat[i][j];
}
return mat;
}
/*Функция освобождения памяти*/
void delMat(float** mat, int n)
{
for (int i = 0; i < n; i++)
{
delete[] mat[i];
}
delete[] mat;
}
/* Функция обработки */
int count_of_rows(float** mat, int n, int m, float q)
{
int i, j, count = 0, prod;
for (i = 0; i < n; i++)
{
prod = 1;
for (j = 0; j < m; j++)
prod *= mat[i][j];
if (prod > q)
count++;
}
return count;
}
int main()
{
setlocale(LC_ALL, “rus”);
float **A, **B; // A[3][7], B[4][5]
float Q;
cout << "Введите элементы матрицы A.
...
Код консольного приложения с использованием класса
#include
#include
#include
using namespace std;
class maker
{
private:
float **mat;
int n, m;
char c;
public:
maker(int n, int m, char c);
~maker();
void input();
int count_of_rows(float q);
};
/* Конструктор с выделением памяти под матрицу */
maker::maker(int n, int m, char c)
{
this->n = n;
this->m = m;
this->c = c;
mat = new float*[n];
for (int i = 0; i < n; i++)
{
mat[i] = new float[m];
}
}
/* Метод для ввода элементов матрицы */
void maker::input()
{
int i, j;
cout << "Введите элементы матрицы " << c << ".
...
Код консольного приложения с использованием класса-наследника
#include
#include
#include
using namespace std;
class maker
{
protected:
float **mat;
int n, m;
char c;
public:
maker(int n, int m, char c);
~maker();
void input();
int count_of_rows(float q);
};
/* Конструктор с выделением памяти под матрицу */
maker::maker(int n, int m, char c)
{
this->n = n;
this->m = m;
this->c = c;
mat = new float*[n];
for (int i = 0; i < n; i++)
{
mat[i] = new float[m];
}
}
/* Метод для ввода элементов матрицы */
void maker::input()
{
int i, j;
cout << "Введите элементы матрицы " << c << ".
...
Узнайте сколько будет стоить выполнение вашей работы
Список использованной литературы
- 1. Б. Страуструп. Язык программирования С++. — Издательство: Бином, 2011. – 1136 с.