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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ вывести матрицу на экран и сообщить минамальный и м аксимальный элемент http://www.cyberforum.ru/cpp-beginners/thread196365.html
Ввести число N – порядок квадратной матрицы. Последовательно по строкам ввести с клавиатуры все элементы матрицы. Вывести матрицу на экран и сообщить, какой элемент является минимальным и его координаты, а какой максимальным и его координаты
C++ Передать значение из dll в файл. Есть dll, в неё посылаются значения, она их прощитывает и возвращает какой-то результат. Так вот нужно, когда в dll'ке функция возвратит значение в переменную, значение этой переменной записалось в файл .txt, ну а дальше продолжилось выполнение dll. Вот примерно так: double C6 = FunktionC5 (.....); // пердача значения FILE *test = fopen("D:\test.txt", "a"); fprintf(test, "C6"); ... http://www.cyberforum.ru/cpp-beginners/thread196348.html
C++ Матрица смежности
есть такая программка. она позволяет построить списки смежности для данного ориентированного графа (вообщем-то матрицу смежности). N - количество вершин графа. Вопрос: как переделать программу так, чтобы N задавалось пользователем? #include <iostream.h> #include <conio.h> #define N 4 #define TRUE 1 #define FALSE 0
Формирование из элементов массива A нового массива B C++
Собственно, это и есть весь вопрос. Предположим, задан некий массив A. Все элементы данного массива, удовлетворяющие некоторому свойству, должны быть объединены в новый массив B. Очень буду благодарен за приведение простого примера.
C++ Нерекурсивный двоичный поиск http://www.cyberforum.ru/cpp-beginners/thread196334.html
необходимо написать на С++ двоичный поиск в рекурсивном варианте. вот пример рекурсивной ф-ции двоичного поиска: int BinSerch(int x,int L, int R, int key){ if (R<L) return -1; int M=(L+R)/r; if (x = = key) return M; else if (x < key) return BinSearch(X, L, M-1, key); else return BinSearch(X, M+1, R, key);
C++ Замена последовательности символов. Помогите, пожалуйста с задачей: Заменить в исходном тексте, состоящем из n строк, одну последовательность символов на другую.Замена должна выполняться, начиная с заданной позиции (номер строки и номер символа в строке); каждая замена должна сопровождаться запросом на ее осуществление.Все необходимые данные определить в диалоговом режиме. Задача реализуется на Си. подробнее

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

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));
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru