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

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

Войти
Регистрация
Восстановить пароль
 
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,910
Записей в блоге: 1
#1

Сумма числе в файле - C++

08.02.2012, 18:29. Просмотров 573. Ответов 6
Метки нет (Все метки)

Не могу понять ваше как это выполнить может есть какая это функция.
Вот сама задача:
Есть файл с названием Date.txt, надо открыть файл и сложить все цифры в нем?
Как это можно сделать, я знаю как открыть файл, но не могу понять как распознать цифры
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.02.2012, 18:29     Сумма числе в файле
Посмотрите здесь:

C++ сумма цифр в данном числе
Составить программу, в которой вычислить z=(s1+s2)/(k1*k2), где s1 и k1 - сумма и количество положительных элементов массива Х[N]; s1 u k2 - сумма C++
C++ сумма цифр в числе
Сумма цифр в числе C++
Рекурсия: количество цифр в числе, сумма цифр и реверс числа C++
C++ Определить есть ли в файле число у которого сумма цифр целой и дробной части равны
C++ Написать функцию для определения наличия в файле чисел, у которых сумма цифр целой и дробной части равны
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
08.02.2012, 18:41     Сумма числе в файле #2
C
1
fscanf(pFile, "%d", &val);
Добавлено через 1 минуту
Цитата Сообщение от Sylar9 Посмотреть сообщение
цифры
тогда так
C
1
2
3
if ( fscanf(pFile, "%с", &с) == 1 )
   if ( isdigit(c) )
      с -= '0';
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,910
Записей в блоге: 1
08.02.2012, 18:44  [ТС]     Сумма числе в файле #3
Цитата Сообщение от go Посмотреть сообщение
C
1
fscanf(pFile, "%d", &val);
Добавлено через 1 минуту

тогда так
C
1
2
3
if ( fscanf(pFile, "%с", &с) == 1 )
   if ( isdigit(c) )
      с -= '0';
мне надо на С++
использованием ifstream
igorrr37
1636 / 1264 / 129
Регистрация: 21.12.2010
Сообщений: 1,925
Записей в блоге: 7
08.02.2012, 20:17     Сумма числе в файле #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <numeric>
#include <iterator>
#include <fstream>
#include <cctype>
 
int main()
{
    std::ifstream ifs("1.txt");
    if(ifs)
    {
        std::cout << std::accumulate(std::istreambuf_iterator<char>(ifs), std::istreambuf_iterator<char>(), 0,
                                     [](std::size_t sum, char c){return std::isdigit(c) ? sum + c - '0' : sum;}
                                     );
    }
    else std::cerr << "Can't open file\n";
    ifs.close();
    return 0;
}
Том Ардер
Модератор
Эксперт по математике/физике
3704 / 2317 / 286
Регистрация: 15.06.2009
Сообщений: 4,100
08.02.2012, 20:30     Сумма числе в файле #5
Цитата Сообщение от Sylar9 Посмотреть сообщение
Сумма числе в файле
Цитата Сообщение от Sylar9 Посмотреть сообщение
открыть файл и сложить все цифры в нем
Так числа или цифры? Это разные вещи, и путать их, как это делает "широкая публика" и пресса, здесь не рекомендуется.
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,910
Записей в блоге: 1
08.02.2012, 22:37  [ТС]     Сумма числе в файле #6
Цитата Сообщение от igorrr37 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <numeric>
#include <iterator>
#include <fstream>
#include <cctype>
 
int main()
{
    std::ifstream ifs("1.txt");
    if(ifs)
    {
        std::cout << std::accumulate(std::istreambuf_iterator<char>(ifs), std::istreambuf_iterator<char>(), 0,
                                     [](std::size_t sum, char c){return std::isdigit(c) ? sum + c - '0' : sum;}
                                     );
    }
    else std::cerr << "Can't open file\n";
    ifs.close();
    return 0;
}
А можешь про комментировать строчку td::accumulate(std::istreambuf_iterator<char>(ifs), std::istreambuf_iterator<char>(), 0,
[](std::size_t sum, char c){return std::isdigit(c)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2012, 23:54     Сумма числе в файле
Еще ссылки по теме:

Поиск положительных среднеарифметических числе в файле C++
C++ Наибольшее и наименьшее значение случайно сгенерированных чисел в файле и контрольная сумма файла
C++ Дано натурально число n. Сколько цифр в этом числе. Чему равняется сумма цифр. Найти первую цифру
Определить сколько цифр в заданном натуральном числе, и чему равна сумма его цифр C++
Возвести во введенном натуральном числе каждую цифру в степень, соответствующую ее позиции в числе C++

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

Или воспользуйтесь поиском по форуму:
remarkes
300 / 223 / 13
Регистрация: 01.07.2011
Сообщений: 809
Записей в блоге: 1
08.02.2012, 23:54     Сумма числе в файле #7
C
1
2
3
4
5
int x=0; // сумма цифр из текста
int c; // переменная для чтения файла
while ( (c=fgetc(fp)) != EOF ) // читаешь файл функцией 
    if ( isdigit(c) != 0 )  // isdigit - возвращает не-нуль, если цифра 
        x+=atoi(c); // atoi - возвращает число
Yandex
Объявления
08.02.2012, 23:54     Сумма числе в файле
Ответ Создать тему
Опции темы

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