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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Artem_18
Заблокирован
#1

структуры, нужно подправить код - C++

23.11.2010, 23:51. Просмотров 282. Ответов 0
Метки нет (Все метки)

может кто помочь изменить код так, чтобы вычисляло общий средний балл всех студентов и распечатало список студентов со средними баллами выше общего среднего балла.

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
#include "stdafx.h"
#include "conio.h"
 
struct student
{ 
char surname[20];
int estimate1;
}
gruppa [30];
 
void main (void)
{ int i,j,k, priznak=1;
printf ("List of 30 students\n");
 
for (i=1;i<=30;i++)
{ 
printf ("Enter data of student %d or 0 for exit\n",i);
printf ( "surname:");
fflush(stdin);
gets (gruppa [i].surname);
printf ("enter one mark!");
fflush(stdin);
scanf ("%d", &gruppa[i]. estimate1);
k=i;
printf ("enter 1-for continue 0-for end");
scanf ("%d",&priznak);
if (!priznak) break;
}
for (i=0;i<25;i++)
{ 
printf ("enter number of student?\n");
scanf ("%d",&j);
if (j>k)
{ 
printf ("\nNo data!");
continue;
}
printf ("Student:%s\n", gruppa[j].surname);
printf ("mark: %d\n", gruppa[j].estimate1);
printf ("enter data of student or 0 for exit?\n");
scanf("%d", &priznak);
if (!priznak) break;
}
 
gets ("programme end!Press any key...");
getch ();
}
Добавлено через 3 часа 4 минуты
програмку сделал,но есть ошибки помогите исправить
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
#include "stdafx.h"
#include <iostream>
#include <string>
#include <vector>
#include <iterator>
#include <numeric>
 
class Record
{
public:
Record() : av(0.0f) {}
 
friend std::istream &operator >> (std::istream &stream, Record &rec); 
friend std::ostream &operator << (std::ostream &stream, const Record &rec); 
 
float getAv() const {return av;}
private: 
std::string surname;
float av;
};
 
struct sum : public std::binary_function<float, Record, float> 
{
float operator()(float a, Record b) {return a + b.getAv();}
};
 
struct lesser : public std::binary_function<Record, float, bool> 
{
bool operator()(Record b, float a) const {return b.getAv() < a;}
};
 
std::istream &operator >> (std::istream &stream, Record &rec)
{
std::cout << "Surname: ";
stream >> rec.surname;
std::cout << "Score: ";
stream >> rec.av;
return stream;
}
 
std::ostream &operator << (std::ostream &stream, const Record &rec)
{
stream << rec.surname << " " << rec.av;
}
 
int main()
{
std::vector<Record> records;
std::cout << "Enter data. Send eof (Ctrl+Z) to terminate input\n";
std::copy(std::istream_iterator<Record>(std::cin), std::istream_iterator<Record>(), std::back_inserter(records));
 
std::cout << "All students: \n";
std::copy(records.begin(), records.end(), std::ostream_iterator<Record>(std::cout, "\n"));
 
float avscore = std::accumulate(records.begin(), records.end(), 0.0f, sum()) / records.size();
std::cout << "Average score: " << avscore << std::endl;
 
std::cout << "List of student with great results\n"; 
std::remove_copy_if(records.begin(), records.end(), std::ostream_iterator<Record>(std::cout, "\n"), std::bind2nd(lesser(), avscore));
}
Добавлено через 4 минуты
по моеме у меня что-то не так с этой строкой
C++
1
std::remove_copy_if(records.begin(), records.end(), std::ostream_iterator<Record>(std::cout, "\n"), std::bind2nd(lesser(), avscore));
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2010, 23:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос структуры, нужно подправить код (C++):

Нужно подправить код - C++
Здравствуйте. Нужно, что бы после завершения программы, оно не выходило, а что бы появилась надпись: Хотите сыграть еще? И если нажать на...

Строки, нужно подправить код - C++
Есть задание : Из заданной последовательности слов удалить слова, содержащие числа. и я написал данный код: Код: ...

Нужно написать код (Циклические структуры) - C++
Буду благодарен за помощь. Tsuna_Savada, оформите тему в соответствии с правилами форума: текстовые задания набирайте от руки,...

нужно подправить - C++
нужно изменить этот код так ,что бы программа смогла &quot;выжить&quot; в разных ситуациях 1 если знаменатель = 0 и не могу никак понять что...

Подправить код - C++
#include &lt;iostream&gt; #include &lt;locale&gt; #include &lt;ctype.h&gt; using namespace std; int main () { const int n=20; char s; int k={...

Подправить код - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; const int n=10; float X; double sum(); int _tmain(int argc,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2010, 23:51
Привет! Вот еще темы с ответами:

Подправить код - C++
Ввожу строку с 30 символов. Нужно вывести целое число и упорядочить за возростанием Добавлено через 39 секунд пример кода на фортран...

Подправить код - C++
Помогите пожалуйста, нужно подправить код: /* Дана целочисленная квадратная матрица. Опередить: 1) произведение элементов в тех...

Нужно подправить программу - C++
Нужно чтобы программа выводила сообщение &quot;такого элемента нет&quot; если указанной цифры нет в массиве. (массив упорядоченный). Заранее...

массив нужно подправить - C++
Из шести первых отрицательных элементов массива В(30) найти максимальный элемент. она чуток неправильно работает можете помочь исправить:...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru