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

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

Войти
Регистрация
Восстановить пароль
 
scenik
3 / 3 / 1
Регистрация: 03.12.2011
Сообщений: 55
#1

[Проверить программу] Дан файл, компоненты которого являются действительными числами. Найти произведение компонент файлов - C++

29.12.2013, 19:36. Просмотров 719. Ответов 5
Метки нет (Все метки)

Дан файл, компоненты которого являются действительными числами. Найти произведение компонент файлов.
Постоянно выдает в ответ "1".
В чем заключается проблема?
Спасибо за ответы.

C++
1
2
3
4
5
6
7
8
9
10
#include <iostream.h> 
#include <fstream.h> 
int main() { 
    ifstream f("f.txt"); 
    double v, s = 1; 
    while (f>>v) 
    s *= v; 
    cout<<"proizvedenie:"<<s<<endl; 
    return 0; 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2013, 19:36     [Проверить программу] Дан файл, компоненты которого являются действительными числами. Найти произведение компонент файлов
Посмотрите здесь:

C++ Дан файл f, компоненты которого являются целыми числами
Помогите написать программу с действительными числами. C++
Дан файл, компоненты которого являются действительными числами. Найти наименьшее из значений компонент с четными номерами. C++
Сложная обработка элементов файлов. Найти сумму положительных компонент файла, расположенных до максимальной компоненты... C++
Дан файл f, компоненты которого являются целыми числами. Получить файл g, образованный из файла f исключением повторных вхождений одного и того же чис C++
C++ Дан файл с действительными числами. Получить в новом файле компоненты исходного файла в обратном порядке.
C++ Дан файл f, компоненты которого являются целыми числами. Найти:
C++ Даны два файла с числами. Получить новый, каждый компонент которого равен наибольшему из соотв. компонентов заданных файлов
C++ 1.Дан файл, компоненты которого являются действительными числами. Найти разность первой и последней компонент файла
C++ Дан файл F, компоненты которого являются целыми числами. Найти наибольшее значение
Дан файл f, компоненты которого - целые числа. Найти количество нечетных чисел среди компонент C++
C++ В данном бинарном файле, компоненты которого являются действительными числами, найти min и max

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MastAKK
145 / 136 / 12
Регистрация: 13.10.2012
Сообщений: 586
Записей в блоге: 1
29.12.2013, 20:00     [Проверить программу] Дан файл, компоненты которого являются действительными числами. Найти произведение компонент файлов #2
scenik, эмм, тут цикл неправильный:
C++
1
while (f>>v)
ifstream::operator>> не возвращает bool.
Тут нужно так:
C++
1
2
3
4
while(!f.eof()){
   f >> v;
   s *= v;
}
Добавлено через 4 минуты
Хотя насчет неправильного немного поспешил, работать-то возможно и будет, но не уверен что так, как ожидаешь
scenik
3 / 3 / 1
Регистрация: 03.12.2011
Сообщений: 55
29.12.2013, 20:24  [ТС]     [Проверить программу] Дан файл, компоненты которого являются действительными числами. Найти произведение компонент файлов #3
Цитата Сообщение от MastAKK Посмотреть сообщение
scenik, эмм, тут цикл неправильный:
C++
1
while (f>>v)
ifstream::operator>> не возвращает bool.
Тут нужно так:
C++
1
2
3
4
while(!f.eof()){
   f >> v;
   s *= v;
}
Добавлено через 4 минуты
Хотя насчет неправильного немного поспешил, работать-то возможно и будет, но не уверен что так, как ожидаешь
С Вашим кодом что-то тоже неправильно работает, не могли бы Вы написать его полностью, возможно я что-то неправильно заменил.
MastAKK
145 / 136 / 12
Регистрация: 13.10.2012
Сообщений: 586
Записей в блоге: 1
29.12.2013, 20:41     [Проверить программу] Дан файл, компоненты которого являются действительными числами. Найти произведение компонент файлов #4
scenik,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream> 
#include <fstream> 
 
int main() { 
    std::ifstream f("f.txt",  std::ifstream::in); 
    double v = 1, s = 1; 
    while (!f.eof()){
        f >> v;
        s *= v;
    } 
    std::cout << "Multiple: " << s << std::endl; 
    return 0; 
}
Добавлено через 1 минуту
Кстати, что-то я сперва не заметил, что нету using namespace std; или std::
Так же, почему <iostream.h> и <fstream.h>?
scenik
3 / 3 / 1
Регистрация: 03.12.2011
Сообщений: 55
29.12.2013, 20:54  [ТС]     [Проверить программу] Дан файл, компоненты которого являются действительными числами. Найти произведение компонент файлов #5
Цитата Сообщение от MastAKK Посмотреть сообщение
scenik,

Кстати, что-то я сперва не заметил, что нету using namespace std; или std::
Так же, почему <iostream.h> и <fstream.h>?
Это все чудеса нашего образования, когда в университетах все еще стоят компьютеры с 256-512мб ОЗУ, установленной WinXP и Visual'ом 98 года выпуска.

Но по началу я все вставил правильно, просто не тот файл с цифрами изменял .
Gomorra
0 / 0 / 0
Регистрация: 29.04.2013
Сообщений: 31
12.01.2014, 20:32     [Проверить программу] Дан файл, компоненты которого являются действительными числами. Найти произведение компонент файлов #6
А можно эту же прогу, но на Паскале ?
Yandex
Объявления
12.01.2014, 20:32     [Проверить программу] Дан файл, компоненты которого являются действительными числами. Найти произведение компонент файлов
Ответ Создать тему
Опции темы

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