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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2010, 17:12   #1
yorik1984
 
Регистрация: 07.03.2010
Сообщений: 6
По умолчанию Почему из файла считывается два значения, если там одно

Помогите разобраться!
Программа должна считать из файла числа и вывести на экран их среднее арифметическое.
Например. В файле infile.dat записаны два числа 5 и 6. Но, почему-то, считывает три числа(5, 6 и последнее, тоесть опять 6) в итоге получается, что место двух чисел в сумме три числа. если в файле только одно число, то считывается два одинаковых. Язык С++. Компилятор g++.
Код:
//Программа, считывающаю из файла infile.dat список чисел типа double 
//и выводящая на экран их среднее арифметическое.

#include <iostream>  
#include <fstream>
#include <cstdlib>

int main()
{
	using namespace std;
	double num, sum;
	int divisor;
	ifstream in_stream;
	in_stream.open("infile.dat");
	if (in_stream.fail())	{
		cout << "Ошибка открытия файла \n";
		exit(1);
	}
	sum = 0;
	divisor = 0;
	while (! in_stream.eof()){
		in_stream >> num;
		sum += num;
		divisor++;	
	}
	cout << (sum/divisor) 
	
	// для контроля значения переменных
		 << "\nколичество слагаемых  " << divisor
		 << "\nсумма  " << sum;
		 
	in_stream.close();	
	return 0;
}

Последний раз редактировалось yorik1984; 18.03.2010 в 17:17.
yorik1984 вне форума Ответить с цитированием
Старый 18.03.2010, 17:19   #2
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

зайди в infile.dat и у тебя после 6 убери пустую строку чтоб после 6 ничево не было ни пустой строки ни пробела!
Cpluser вне форума Ответить с цитированием
Старый 18.03.2010, 17:24   #3
yorik1984
 
Регистрация: 07.03.2010
Сообщений: 6
По умолчанию

ни пустой строки, ни пробелов... ничего нет. и все равно читает последнее число 2 раза
yorik1984 вне форума Ответить с цитированием
Старый 19.03.2010, 01:48   #4
yorik1984
 
Регистрация: 07.03.2010
Сообщений: 6
По умолчанию

Проблема РЕШЕНА. Оказывается редактор при сохранении добавлял автоматически новую строку.
yorik1984 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Узнать цвет пикселя в Timage, если там не bmp а jpeg? TwiX Общие вопросы Delphi 4 27.09.2009 19:11
Всплывающая подсказка, если одно из значний меньше 0 kzld Microsoft Office Excel 6 22.07.2009 07:37
Редактирование файла, с переводом из одно СЧ в другую KREGI Помощь студентам 1 06.03.2009 21:59
Мне нужно выбрать данные из первого запроса, если он вернул хоть одно число=числу из nata Общие вопросы Delphi 8 05.06.2007 23:57
два TMediaPlayer и два AVI-файла zeleniy Компоненты Delphi 0 01.06.2007 14:14