Форум программистов, компьютерный форум CyberForum.ru

Нужна помощь с расчетом среднего времени и функцией вывода - C++

Восстановить пароль Регистрация
 
Argentum21
1 / 1 / 0
Регистрация: 05.03.2014
Сообщений: 75
05.03.2014, 17:17     Нужна помощь с расчетом среднего времени и функцией вывода #1
Доброго времени суток!
Обращаюсь к Вам за помощью в след.задаче:
В продуктовом магазине проводиться хронометраж работы продавцов.Фиксируется время обслуживания продавцом i-ого покупателя ,сколько покупок разного именования сделал этот покупатель,какие это были покупки,штучный товар или весовой.Выявить наиболее расторопного продавца в магазине (считать что на отпуск весового товара продавец тратит в среднем в три раза больше времени,чем на отпуск штучного).Определить среднее время обслуживания каждым продавцом одного покупателя.

Код я написала. Но только функцию ввода и main
Нужна помощь с расчетом среднего времени (а, оно, как я считаю, равно = kol_shtuk+3*kol_shtuk) и функцией вывода.
Вот все, что имеется из написанного:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
#include <stdio.h>
#include <conio.h>
struct prodavec
{ char FIO[25];
  int i; //nomer pr-ca
  int kol_ves;
  int kol_shtuk;
  int time; //obchee vremya na obsluz.odnim pr-om vseh pokupatele
  float sr_time;
}
;
void input ()
{ 
prodavec pr;
int n, i;
char filename[100];
int vsego_pr=0;
printf ("\nViberite deystvie\n");
printf ("\n1). Sozdat` file\n");
printf ("\n2). Otkrit` file\n");
fflush (stdin);
char s=getche ();
FILE*f;
if (s=='1')
{
printf ("\nVvedite imya dlya novogo faila\n");
gets (filename);
f=fopen (filename, "wb+");
}
if (s=='2')
{
printf ("\nVvedite imya faila\n");
gets (filename);
f=fopen (filename, "rb+");
if (f)
printf ("\nFile sushestvuet!\n");
else
{ printf ("File ne sushestvuet!\n");
printf ("\nViberite deistvye:\n");
printf ("\n1). Sozdat file\n");
printf ("\n2). Vyhod!\n");
s=getche ();
if (s=='1')
{
printf ("\nVvedite imya dlya novogo faila\n");
gets (filename);
f=fopen (filename, "wb+");
}
if (s=='2')
return;
}
do
{ fflush (stdin);
printf ("\nVyberute deistvie: \n");
printf ("\n 1). Dobavit dannye\n");
printf ("\n2). Posmotret` dannye \n");
printf ("\n3). Sozdat file zanovo \n");
printf ("\n4). Vyhod!\n");
s=getche();
if (s=='4') break;
if (s=='1')
do
 {fflush (stdin);
  printf ("\n FIO \n");
  gets (pr.FIO);
  printf ("Vvedite nomer pr-ca \n");
  scanf ("%d",&pr.i);
  printf ("\nVvedite kol-vo pokup-ei\n");
  scanf ("%d", &n);
  for (i=1; i<=n; i++)
  {
  printf ("Vvedite kol-vo shtucn.tovara \n");
  scanf ("%d", &pr.kol_shtuk);
  printf ("Vvedite kol-vo vesov. tovara \n");
  scanf ("%d", &pr.kol_ves);
  printf ("Vvedite obchee vremya obsluzh. etim prodavcom etogo pokupatela \n");
  scanf ("%d", &pr.time);
 pr.sr_time=(pr.time/(pr.kol_shtuk+3*(pr.kol_shtuk)));
 printf ("\nSrednee vremya obsluz. %d prod. odnogo pokupatelya ravno %f\n", pr.i, pr.sr_time);
  }
  fwrite (&pr, sizeof(pr), 1, f);
  vsego_pr=vsego_pr+1;
  printf ("\nProdolzat' vvod [D/H]\n");
  fflush (stdin);
  s=getche ();
 }
 while (s=='D' || s=='d');
}
while (s!=1 || s!=2 || s!=3 || s!=4);
}
}
 
void output ()
{ prodavec pr;
char filename[100];
FILE*f;
f=fopen (filename, "rb+");
if (f)
{ fread (&pr, sizeof(pr), 1, f);
{ printf ("\n %s %d %f", pr.FIO, pr.i, pr.sr_time); }
printf ("\n");
}
int max=pr[1].sr_time;
if (max<pr.sr_time)
max=pr.sr_time;
printf ("\nSamyi rastoropnyi prodavec v magazine - eto %d", pr.i);
printf ("\nNazmite lyubuyu klavishu!\n");
fflush (stdin);
char s=getch ();
fclose (f);
}
 
void main ()
{ int menu;
do
{clrscr ();
printf ("\nBaza dannyh prodavcov\n");
printf ("\n1 - Vvod dannyh\n");
printf ("\n2 - Prosmotr dannyh\n");
printf ("\n3 - Vyhod\n");
scanf ("%d", &menu);
switch (menu)
{ case 1: input (); break;
  case 2: output (); break;
}
}
while (menu!=2);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.03.2014, 17:17     Нужна помощь с расчетом среднего времени и функцией вывода
Посмотрите здесь:

C++ Нужна помощь.
Нужна помощь C++
Создать абстрактный базовый класс Integer(целое) с виртуальными арифметическими операциями и функцией вывода на экран C++
Работа с классами. Нужна помощь с функцией C++
Нужна помощь C++
C++ функция вывода системного времени
Составить программу для вывода среднего балла C++
C++ Создайте базовый абстрактный класс «Товар» с чистой виртуальной функцией вывода данных

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 23:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru