Стоимость: 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 с.