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


Автор: Оличка 10.11.2006, 19:38
1.    Помогите пожалуйста переделать задачу по С++ Builder : Имеются сведения о времени вылета и пунктах назначения 20 авиарейсов. Выдать номера и время вылета всех рейсов следующих в заданный пункт назначения.   Он у меня только по отдельности выдаёт рейсы а надо все сразу…..


Код

# include <iostream.h>
# include <conio.h>
int main(void)
{int i;
int maxs=20;
int c;
int m;
int A;
int P;
cout<<"zadanni punkt"<<endl;
cin>>P;
for(i=1;i<=maxs;i++) {
cout<<"CAMOJIET #"<<i<<endl;
cout<<"vvedite chas"<<endl;
cin>>c;
cout<<"vvedite minyti"<<endl;
cin>>m;
cout<<"vvedite punkt naznacheniy"<<endl;
cin>>A;
cout<<"CAMOJIET JIETiT B PYHKT #"<<A<<endl;
if (P==A) {
cout<<"samolet letiyhi v zadanni punkt"<<endl;
cout<<"vremiy"<<c<<":"<<m;
} else {cout<<"Camolet nikyda ne letit"<<endl;}}
getch ();
}

 

2.    И ещё кто может помогите пожалуйста переделать задачу с массивами на задачу с функциями: Известно количество деталей, произведенных каждым из 40-ка рабочих. Сколько рабочих имеют производительность ниже средней?


Код

# include <iostream.h>
# include <conio.h>

  int main(void)
{const int maxr=5;
 int r[maxr];
 int i;
 int v;
 v=0;
 for(i=0;i<=maxr-1;i++)
 {cout <<"vvedite kol-vo detalei proiz-x pabochim #"<<i+1<<endl;
 cin>>r[i];
 v+=r[i];}

  int m=0;
  for(i=0;i<=maxr-1;i++)
  {if (r[i]<v/maxr)
  {m++;}
  }
  cout <<"proizvoditelnost' nige srednei"<<m;
  getch();
  return 0;
  }




Автор: Alexeis 10.11.2006, 21:29

M
alexeis1
Модератор: Название темы должно отражать ее суть!

Модератор: Пожалуйста, один топик - один вопрос.


Автор: mr.Anderson 10.11.2006, 21:54
Первую, откровенно говоря, не понял. Какие входные данные, какие выходные? Поточнее, пожалуйста.

Вторую могу сказать (если данные производительности рабочих вводим с клавиатуры):
Код

# include <iostream.h>
# include <conio.h>

int main(void)
{
 const n = 40;
 int people[ n ];
 
 for( int i=0; i < n; i++ )
 {
  cout<<"Enter number of details from "<<i+1<<" man: ";
   cin>>people[ i ];
 }

 int average = 0;
 for( int i=0; i < n; i++ )
  static int sum += people[ i ];

 average = sum / n; 

 int count = 0;
 for( int i=0; i < n; i++ )
 {
  if( people[ i ] < average )
   count++;
 }

 cout<<"Count of lazy mans: "<<count;
}

Это как один из вариантов. Может, можно и проще, но это должно работать, хотя я не проверял.

Автор: Оличка 10.11.2006, 22:24
Спасибо БОЛЬШОЕ sim7 smile А в первой у меня просто не получается то что просят!!!  Вообще с програмирование тяжко....

Автор: mr.Anderson 10.11.2006, 22:28
Всегда пожалуйста. smile Ты просто объясни, что должна делать программа. Что мы должны в нее вводить, а что выводить она должна. Ведь программа, чувствую, несложная, но нужно знать, как она должна работать, чтобы написать ее.

Добавлено @ 22:35 
Кстати, во второй задаче я только привел пример как работать с массивами в ней. А что значит "переделать в задачу с функциями"? Какие тогда функции должны быть? Любые?

Автор: Оличка 11.11.2006, 10:38
Во второй любые!!!!А в первой он мне должен вывести все номера рейсов и их время летящих в один и тот же пункт.Первый курс сам понимаешь как студентке не легко... smile 

Автор: Dov 11.11.2006, 12:42
Цитата(Оличка @  10.11.2006,  22:24 Найти цитируемый пост)
А в первой у меня просто не получается то что просят!!!

Плохо просят, наверно.   smile 
Код
# include <iostream.h>
# include <conio.h>

struct AviaReys 
{
    int punkt;
    int chas;
    int min;
};

const int maxs = 20;

int main(void)
{

    AviaReys    CAMOJIET[maxs];
    int         zadanni_punkt;
    int         i;

    cout << "zadanni punkt: ";
    cin >> zadanni_punkt;
    cout << "=================\n";

    for(i = 0; i < maxs; i++)
    {
        cout << "\nCAMOJIET #" << i + 1 << endl;

        cout << "vvedite chas  : ";
        cin >> CAMOJIET[i].chas;

        cout << "vvedite minyti: ";
        cin >> CAMOJIET[i].min;

        cout << "vvedite punkt naznacheniy: ";
        cin >> CAMOJIET[i].punkt;

        cout<<"CAMOJIET JIETiT B PYHKT #" << CAMOJIET[i].punkt << endl;
    }

    cout << endl;

    for(i = 0; i < maxs; i++)
    {
        if(CAMOJIET[i].punkt == zadanni_punkt)
        {
            cout << "\nCAMOJIET #" << i + 1 << ": letiyhi v zadanni punkt." << endl;
            cout << "vremiy: " << CAMOJIET[i].chas << ":" << CAMOJIET[i].min << endl;
        }
        else
        {
            cout << "\nCAMOJIET #" << i + 1 << ": nikyda ne letit" << endl;
        }

    }

    getch();

    return 0;
}


Автор: Dov 11.11.2006, 13:42
Цитата(Оличка @  11.11.2006,  10:38 Найти цитируемый пост)
Во второй любые!

Код
# include <iostream.h>
# include <conio.h>

void   input(int mas[], int size);
double srednyaya_proizvoditelnost(int mas[], int size);
int    nige_srednei(int mas[], int size);

int main()
{
    const int  maxr = 5;
    int        ar[maxr];

    input(ar, maxr);

    cout << "srednyaya proizvoditelnost'   : " << srednyaya_proizvoditelnost(ar, maxr) << endl;
    cout << "proizvoditelnost' nige srednei: " << nige_srednei(ar, maxr) << endl;

    getch();

    return 0;
}

void input(int mas[], int size)
{
    int i;
    
    for(i = 0; i < size; i++)
    {
        cout << "vvedite kol-vo detalei proiz-x pabochim #" << i + 1 << endl;
        cin >> mas[i];
    }
    
    cout << endl;
}

double srednyaya_proizvoditelnost(int mas[], int size)
{
    int sum = 0;
    int i;
    
    for(i = 0; i < size; i++)
        sum += mas[i];
    
    return ((double)sum / size);
}

int nige_srednei(int mas[], int size)
{
    int i;
    int m = 0;
    double sredn_proizvod;
    
    sredn_proizvod = srednyaya_proizvoditelnost(mas, size);
    
    for(i = 0; i < size; i++)
        if(mas[i] < sredn_proizvod)
            m++;
        
    return m;
}

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