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

Найти для каждого студента средний бал за все пять лет и год, когда бал был максимальным - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как можно записывать в вектор типа классса? http://www.cyberforum.ru/cpp-beginners/thread1092507.html
к примеру есть класс Homeworlist, в котором есть вектор list. vector<Homework> list; теперь мне нужно записывать в вектор информацию, каждый раз, когда вызывается следующая функция: void Homeworklist::Add(Homework h) { if (a>=50) cout << "No"; cin >> list.HomeworkName >> list.Assigned_Date_1 >> list.GetDue_Date_1; list.push_back(h); a++;
C++ алгоритм Хаффмана не получается раскодировать файл, не пойму в чем проблема. #include "stdafx.h" #include <iostream> #include <vector> #include <map> #include <list> #include <fstream> #include <Windows.h> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread1092495.html
Две экспортные функции по одному адресу C++
Здравствуйте. Использую для экспорта: extern "C" __declspec(dllexport) __declspec(noinline) Но две функции вышли по одному адресу, как поправить это дело?
Отрицательные элементы умножить на последний элемент соответствующей строки. C++
Отрицательные элементы умножить на последний элемент соответствующей строки. Массив m, заполненный генератором случайных чисел в диапазоне (от –150 до +150).
C++ Определить есть ли в массиве элементы кратные К. http://www.cyberforum.ru/cpp-beginners/thread1092476.html
Методом случайных чисел заполнить массив на 10 элементов (диапазон значений от 0 до 100), определить есть ли в данном массиве элементы кратные К.
C++ Игра Arcanoid. Рандомное создание блоков для уровня Пишу арканойд используя фреймворк cocos2d-x. Придумал такую идею: при каждом запуске игры или при каждом прохождении текущего уровня должен генерироваться новый уровень. На данный момент я создаю блоки хардкодом и так много уровней конечно же не наделаешь... switch(gameLevel) { case 1 : { curGameWorld = 0; curGameWorld = 0; curGameWorld = 3; curGameWorld = 0; curGameWorld = 0;... подробнее

Показать сообщение отдельно
Polls
0 / 0 / 0
Регистрация: 09.02.2014
Сообщений: 15
09.02.2014, 11:41     Найти для каждого студента средний бал за все пять лет и год, когда бал был максимальным
Имеются сведения по студентам: студент, бал в расчете на одного человека за каждый год из последних 5-ти лет. Найти для каждого студента средний бал за все пять лет и год, когда бал был максимальным
Студентов у которых балы в течении 5-ти лет постоянно увеличивался, и студента с максимальным средним годовым балам за пять лет.

результат обработки вывести на экран в виде таблицы. Организовать сортировку таблицы по колонке, номер которой должен вводиться с клавиатуры.Записать исходные данные на диск в виде текстовых и двоичных файлов

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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<io.h>
#include<string.h>
#include<iostream.h>
//----------------------------------
int N_Max(int* A,int N){
//----------------------------------
int i,k=0;
for(i=1;i<N;i++)if(A[k]<A[i])k=i;
return k;              }
//----------------------------------
float SR_Mas(int* A,int N){
//----------------------------------
float S=0;
for(int i=0;i<N;i++)S+=A[i];
if(N)S/=N;
return S;                 }
//----------------------------------
void Str_RND(char* s,int M){
//----------------------------------
char st[]="QWERTYUIOPASDFGHJKLZXCVBNM";
int j,k,L=strlen(st);
k=rand()%M;
for(j=0;j<2+k;j++)s[j]=st[rand()%L];
​​  s[j]='\0';   }
//----------------------------------
int Nom_Pole(){ int i,p; char s[8];
//----------------------------------
do{
cout<<"\n Input nomer polya (1 - 8) for sorting (OR 0 - Exit): ";
gets(s);
p=atoi(s);
}while((p<0)||(p>8));
return p;       }
//----------------------------------
//  Структура данных:
//----------------------------------
struct Zap{ char Fam[10];
           int Bal[4];
​    float SRED;
           int Max;
           int Nom; };
//----------------------------------
int Sravnenie(Zap A,Zap B,int p){
//----------------------------------
int b;
switch(p){
case 1:b=strcmp(A.Fam,B.Fam)<0;break;
case 2:case 3:case 4:case 5:
      b=A.Bal[p-2]<B.Bal[p-2];break;
case 6:b=A.SRED<B.SRED;break;
case 7:b=A.Max<B.Max;break;
case 8:b=A.Nom<B.Nom;break;
        }
return b;                       }
//-------------------------------------------------
int Input(Zap* Mas,int n);                    // 0
//-------------------------------------------------
void Input_con(Zap* Mas,int n);               // 1
void Input_RND(Zap* Mas,int n);               // 2
int Input_bin(FILE* f,Zap* Mas);              // 3
void Print_table(FILE *ft,Zap* Mas,int kol);  // 4
void Action(Zap* Mas,int kol);                // 5
void Sortirovka(Zap* Mas,int kol,int p);      // 6
int Save(Zap* Mas,int kol);                   // 7
void Write_bin(FILE* f, Zap* Mas, int kol);   // 8
//-------------------------------------------------
int Input(Zap* Mas){ int N,i;char NF[15];     // 0
//-------------------------------------------------
FILE * ft;
do{ 
cout<<"\n Input data from :";
cout<<"\n 1- Consol, 2- RND, 3- File, 0- Exit: -> "; cin>>i;
if(!i)exit(0);
if(i<3){cout<<"\n Input kol-vo zapisei: "; cin>>N;}
switch(i){
case 1:Input_con(Mas,N);break;           // 1
case 2:Input_RND(Mas,N);break;           // 2
case 3:N=0;
      cout<<"\n Input File Name: ";cin>>NF;
     ft=fopen(NF,"rb");
     if(!ft){cout<<"\n File -> no exist!";break;}
      N=Input_bin(ft,Mas); fclose(ft);  // 3
         }
 }while(N==0);
return N;         }
//==================================================
void main(){ int N,p; clrscr();
//==================================================
Zap* Stud;
N=Input(Stud); // 0
//-----------------------------------
Print_table(stdout,Stud,N);// 4
Action(Stud,N);            // 5
Print_table(stdout,Stud,N);// 4
//-----------------------------------
while(p=Nom_Pole()){
Sortirovka(Stud,N,p);      // 6
Print_table(stdout,Stud,N);// 4
Save(Stud,N);      }       // 7
             }
//==================================================
//- Описания функций:  ----------------------
void Input_con(Zap* Mas,int kol){ Zap z;     // 1
//------------------------------------------------
for(int i=0;i<kol;i++){
printf("\n %d). Input FAM: ",i+1); cin>>z.Fam;
for(int j=0;j<4;j++){
printf("     Input BAL %d: ",j+1); cin>>z.Bal[j];
                    }
z.SRED=0; z.Max=0; z.Nom=0; Mas[i]=z; } }
//------------------------------------------------
void Input_RND(Zap* Mas,int n){ Zap z;       // 2
//------------------------------------------------
int i,j;
srand(1);
for(i=0;i<n;i++){ Str_RND(z.Fam,8);
for(j=0;j<4;j++)z.Bal[j]=1+rand()%15;
z.SRED=0; z.Max=0; z.Nom=0;
Mas[i]=z;       }       }
//-----------------------------------------------
int Input_bin(FILE* f,Zap* Mas){             //3
//-----------------------------------------------
int i=fileno(f);
long L=filelength(i);
int kol=L/sizeof(Zap);
cout<<"\n Kol-vo zapisei="<<kol;
Mas=new Zap[kol];
for(i=0;i<kol;i++)fread(Mas+i,sizeof(Zap),1,f);
return kol;                  }
//---------------------------------------------------------
void Print_table(FILE *ft,Zap* Mas,int kol){int i,j;  // 4
//---------------------------------------------------------
if(ft==stdout)clrscr();
fprintf(ft,"\n ----------1---------2------3------4-------5------6--------7----8---");
fprintf(ft,"\n   N      Fam        B1     B2     B3      B4    SRED     Max  Nom");
fprintf(ft,"\n -------------------------------------------------------------------");
for(i=0;i<kol;i++){ fprintf(ft,"\n %2d). %10s ",i+1,Mas[i].Fam);
for(j=0;j<4;j++)fprintf(ft," %5d ",Mas[i].Bal[j]);
if(Mas[i].Nom>0)fprintf(ft," %8.2f %6d %4d",
Mas[i].SRED,Mas[i].Max,Mas[i].Nom);
                   }
fprintf(ft,"\n -------------------------------------------------------------------");
cout<<"\n Press any key for continue ..."; getch();
                       }
//--------------------------------------------------
void Action(Zap* Mas,int kol){ int i,j;       // 5
//--------------------------------------------------
for( i=0;i<kol;i++){
j=N_Max(Mas[i].Bal,4);
Mas[i].Nom=j+1;
Mas[i].Max=Mas[i].Bal[j];
Mas[i].SRED=SR_Mas(Mas[i].Bal,4);
                  }}
//--------------------------------------------------
void Sortirovka(Zap* Mas,int kol,int p){      // 6
//--------------------------------------------------
int i,j,f,c; Zap z;
cout<<"\n Increasing (A-Z)? (1-Yes, 0-No): "; cin>>c;
for(i=0;i<kol;i++)for(j=i+1;j<kol;j++){
                 f=Sravnenie(Mas[i],Mas[j],p);
                 if(c)f=!f;
                 if(f){z=Mas[i];Mas[i]=Mas[j];Mas[j]=z;}
     вЂ‹вЂ‹вЂ‹               }}
//---------------------------------------------
int Save(Zap* Mas, int kol){              // 7
//---------------------------------------------
FILE* ft; int L; char NF[15];
cout<<"\n Save in File: 1 - txt, 2 - bin ? (0 - No): ";cin>>L;
if(L>0){cout<<"\n Input File Name: ";cin>>NF;}
switch(L){
case 1:ft=fopen(NF,"wt"); Print_table(ft,Mas,kol);fclose(ft);break;
case 2:ft=fopen(NF,"wb"); Write_bin(ft,Mas,kol); fclose(ft); // 8
         }
return L;       }
//------------------------------------------------
void Write_bin(FILE* f, Zap* Mas, int kol){ // 8
//------------------------------------------------
for(int i=0;i<kol;i++)fwrite(Mas+i,sizeof(Zap),1,f);
cout<<"\n File *.bin is ready! "; getch();}
//===========================================================
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru