Задача: Двумерные массивы (экономич. задача темпы роста производства)

  • Автор темы navit
  • Дата начала
Статус
Закрыто для дальнейших ответов.
N

navit

Гость
#1
Задали такое задание:
Имеется таблица с данными об объёме производства 10 фирм за 5 лет. Определить, есть ли такая фирма, у которой все 5 лет наблюдался рост производства и, если есть, то каков её номер.

помогите решить пожалуйста)))
 

DarkKnight

Well-Known Member
01.08.2010
653
0
33
Владивосток
#2
C++:
/*
Имеется таблица с данными об объёме производства 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;

}
 

Вложения

N

navit

Гость
#3
DarkKnight125, доволен как слон)) благодарю за ответ!!! а EXE-шный файл этой программы в Microsoft Visual Studio 2008 делается?
 

DarkKnight

Well-Known Member
01.08.2010
653
0
33
Владивосток
#6
Японский бог ;-))) Че вы сегодня все с БС то ;-)))
Я их чертить никогда не любил ;-)) Накатай свою... выложи... если что будет не верно я поправлю :)) А то с нуля ее рисовать ой как не хочется ;-)
 
Статус
Закрыто для дальнейших ответов.