Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [C++] блок схема программых[?]


Автор: operator 5.12.2010, 13:05
Всем привет! Нужна блок схема для этой прогрммы, может ктонибудь помочь?

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


#include"stdafx.h"
#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;

}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)