/*
Имеется таблица с данными об объёме производства 10 фирм за 5 лет.
Определить, есть ли такая фирма, у которой все 5 лет наблюдался рост производства и, если есть, то каков её номер.
*/
/*
codeby.net
Autor: DarkKnight125
*/
#include <iostream>
using namespace std;
void main(void)
{
setlocale(LC_ALL,".1251"); //Переведем локаль в кодовую страницу 1251
double **Arr; //Наша таблица, где строки - фирмы, колонки - года
int cFirm, cYear; //Кол-во фирм, кол-во лет
cout<< "Введите кол-во Фирм : ";
cin>>cFirm;
cout<< "Кол-во лет в статистики : ";
cin>>cYear;
//С помощью динамического выделении памяти, выделим память под массив-таблицу
Arr = new double*[cFirm]; //Выделим память под строки
for (int i = 0; i< cFirm; i++)
{
Arr[i] = new double[cYear]; //Выделим память под колонки для строки
for (int j = 0; j < cYear; j++)
{
cout<<"Введите объем производства для Arr["<< i+1 << "," << j+1 << "] = ";
cin>> Arr[i][j];
}
}
//Найдем ту фирму в которой наблюдается рост
int NumFirm = -1; //Номер фирмы где наюблюдается рост
for (int i = 0; i< cFirm; i++)
{
bool isUp = true; //Флаг роста, пойдем от противного, предположим что текущая фирма на всем периоде имеет рост
for (int j = 1; j< cYear; j++)
if (Arr[i][j-1]>Arr[i][j]) //Если хоть раз предыдущий эл. строки > след. то рост не наблюдается на всем периоде
isUp = false;
if (isUp) //Если же флаг остался TRUE, значит фирма найдена
{
NumFirm = i; //Присвоим номер фирмы
break; //Выйдим из цикла
}
}
cout<< endl<< "Фирма у которой наблюдается рост производства : ";
if (NumFirm > -1)
cout<<NumFirm+1;
else cout << "*не найдена*";
cout<< endl;
}