Привести матрицу к треугольному виду

С++ программа

Коэффициенты системы линейных уравнений заданы в виде прямоугольной матрицы. С помощью допустимых преобразований привести систему к треугольному виду. Найти кол-во строк, среднее арифметическое которых меньше заданной величины. Оформить каждый пункт задания в виде функций. На языке С++

Примечание:
Написала вот это
#include <iostream>
#include <conio.h>
using namespace std;
const int m=3;
void scan( float (*a)[m], int n);
void print(float (*a)[m], int n);
void gauss(float (*a)[m], int n);

void scan( float (*a)[m], int n)
{
for (int i=0;i<n;i++)
{ for (int j=0;j<m;j++)
cin>>a[i][j];
cout<<"\n";}

}
void print(float (*a)[m],int n)
{
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
cout<<a[i][j]<<" ";
cout<<"\n";}

}
void gauss(float (*a)[m],int n)
{
float r;
for(int k=0;k<n;k++)
{for(int j=k+1;j<n+2;j++)
{r=a[j][k]/a[k][k];
for (int i=k;i<n+1;i++)
{a[j][i]=a[j][i]-r*a[k][i];
}
}
}

}
void main()
{ setlocale(LC_ALL,"Russian");
int n;
cout<<"Введите количество строк"<<"\n";
cin>>n;
float (*a)[m] = new float [n][m];
cout<<"Введите коэффициенты"<<"\n";
scan(a,n);
cout<<"Исходная матрица"<<"\n";
print(a,n);
gauss(a,n);
cout<<"\nТреугольный вид"<<"\n";
print(a,n);
getch();
}

Помогите пожалуйста с нахождением кол-ва строк :(
И ещё один вопросик. Можно ли как-то сделать так, чтобы вводить можно было не только кол-во строк, но и столбцов? У меня никак не получается, он постоянно просит чтобы это было константой, и возникают проблемы с массивом
Ответы:
Найти количество строк поможет простой цикл с условием и счетчиком. По поводу проблем с размером массива - динамические массивы в помощь.


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.