Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.09.2013, 18:20   #1
Chainik!
Форумчанин
 
Регистрация: 10.11.2008
Сообщений: 120
По умолчанию Структуры

Вывести на экран все имена студентов, средний бал которых выше 4. Где косяк?? Не могу понять, если ввести 2 студента, у одного средний бал 3, а другого 4.6 выводит обоих студентов. Где я ошибся???
-----------------------------------------------------------------------------
Код:
#include "stdafx.h"
#include "iostream"
#include "iomanip"
#include "clocale"
#include "conio.h"
using namespace std;
//-------------------------------------------
struct Student
{
	char name[20];
	int group;
	int progress[5];
};
//-------------------------------------------
double srd(Student *V, int n)
{
	double sum = 0;
	for(int i = 0; i < n; i++)
	{
		for(int j = 0; j < 5; j++)
			sum += V[i].progress[j];
	}
	double sred = 0;
	sred = sum / 5;
	return sred;
}
//-------------------------------------------
void print(Student &V)
{
	cout << "\n\nName: " << V.name;
	cout << setw(4) << " Gruppa: " << V.group;
	cout << "\n\nОценки: ";
	for(int i = 0; i < 5; i++)
		cout << V.progress[i] << setw(3);
}
//-------------------------------------------
int _tmain(int argc, _TCHAR* argv[])
{
	setlocale(LC_CTYPE, "Rus");
	int n = 0;
	cout << "Введите количество студентов: ";
	cin >> n;
	Student *V = new Student[n];
	for(int i = 0; i < n; i++)
	{
		cout << "\n\nВведите имя: ";
		cin >> V[i].name;
		cout << "\n\nВведите группу: ";
		cin >> V[i].group;
		cout << "\n\nВведите оценки: \n\n";
		for(int j = 0; j < 5; j++)
		{
			cout << "-> ";
			cin >> V[i].progress[j];
		}
	}
	int k = 0;
	for(int i = 0; i < n; i++)
	{
		if(srd(V,n) > 4.0)
			k = 1;
	}
	if(k)
	{
		cout << "\n\nСтуденты у которых бал выше 4: ";
		for(int i = 0; i < n; i++)
			cout << V[i].name << " ";
	}
	else
		cout << "\n\nТаких студентов нет!";
	delete [] V;
	_getch();
	return 0;
}
помог - жми на весы
Chainik! вне форума Ответить с цитированием
Старый 30.09.2013, 18:22   #2
Chainik!
Форумчанин
 
Регистрация: 10.11.2008
Сообщений: 120
По умолчанию

Мне кажется ошибка где то в цикле. Может я лишний цикл использовал??
помог - жми на весы
Chainik! вне форума Ответить с цитированием
Старый 30.09.2013, 18:52   #3
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

Код:
//-------------------------------------------
double srd(Student *V, int n)
{
	double sum = 0;
	for(int i = 0; i < n; i++)
	{
		for(int j = 0; j < 5; j++)
			sum += V[i].progress[j];
	}
	double sred = 0;
	sred = sum / 5;
	return sred;
}
зачем тут тебе цикл по студентам? тут нужен только 1 цикл - по оценкам. ты же находишь среднее арифм одного студента

Код:
for(int i = 0; i < n; i++)
	{
		if(srd(V,n) > 4.0)
			k = 1;
	}
тут соответственно обходи студентов
if (srd(&V[i])) > 4.0 {
...
}
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 30.09.2013, 19:30   #4
Chainik!
Форумчанин
 
Регистрация: 10.11.2008
Сообщений: 120
По умолчанию

Спасибо, понял!
помог - жми на весы

Последний раз редактировалось Chainik!; 30.09.2013 в 20:03.
Chainik! вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача структуры из программы на c# в dll на c++ и получение структуры из dll iukash Общие вопросы .NET 0 07.05.2013 16:03
Динамические структуры данных, списковые структуры (надо разобраться что делает программа) _4Alex4_ Помощь студентам 1 14.11.2012 07:39
Написание программ (древовидные структуры, структуры неспециального вида и т.д.) Green Gin Фриланс 2 27.04.2012 15:26
Управляющие структуры. Программирование алгоритмов разветвляющейся структуры. Лёнка Компоненты Delphi 1 23.04.2012 15:03
Структуры в Си osichev Помощь студентам 2 12.09.2009 15:51