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

Найти ошибочку. Нахождение суммы цифр вещественного числа - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать класс Time для работы со временем http://www.cyberforum.ru/cpp-beginners/thread1202392.html
Нужно исправить ошибки в программе.Срочно. Создать класс Time для работы со временем в формате «час:минута:секунда». Класс должен включать в себя три конструктора инициализации: числами, строкой (например, «23:59:59»), секундами. Конструктор инициализации тремя числами должен присваивать значения по умолчанию минутам и секундам. Реализовать операции вычисления разницы между двумя...
C++ Нарисовать круг и квадрат Нарисовать круг и квадрат!!!у меня имеется прямоугольник и овал,как переделать +++++++++++++++++++ class Rect:public Shape { public: void draw() { line(x1,y1,x2,y1); line(x1,y1,x1,y2); line(x2,y1,x2,y2); http://www.cyberforum.ru/cpp-beginners/thread1202372.html
Статические и виртуальные функции C++
Составить программу с одним родительским классом и двумя потомками. Все поля должны быть закрытыми. Потомки должны содержать виртуальные функции. Для родительского объекта создать статическую функцию выдачи результатов расчета виртуальной функции на экран монитора. Составить тестирующую программу. В ней нужно реализовать вывод параметров объектов на экран монитора. Родительский класс:...
Сумма по модулю 256 C++
Обьясните в алгоритме ГОСТ 28147-89 В РЕЖИМЕ ГАММИРОВАНИЯ 32-х разрядный суматор по модулю 2^32 как это и помогите с реализацией
C++ Substr и рекурсия http://www.cyberforum.ru/cpp-beginners/thread1202334.html
Доброй ночи! void extract(string*, string&); int main() { string array; string test = "FOO bar,1444,63333,99222,100333"; int first = test.find(','); string data = test.substr(first + 1);
C++ Нахождение наименьшего нечетного натурального делителя k (k≠1) любого заданного натурального числа n Помогите с этой задачой: Подпрограммы Составить функцию для нахождения наименьшего нечетного натурального делителя k (k≠1) любого заданного натурального числа n. Хотя бы подскажите идею для решения. подробнее

Показать сообщение отдельно
azbest
41 / 41 / 8
Регистрация: 12.03.2013
Сообщений: 148
08.06.2014, 13:18     Найти ошибочку. Нахождение суммы цифр вещественного числа
Добавим немного читерства))
Прочитаем число в строку и будем перебирать символы. Если не разделительный знак ".", то прибавляем к сумме код символа-48 ("0"-48, "1"-49, ... ).

Зачем так? Потому что вещественные числа сохраняються в памяти компа "по своим хитрым правилам", например число 1.23 будет 1.2299999... пока хватает розрядности)) или 34.56 -- 34.56000000001 и т.д.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    string s;
    cout<<"enter number ";
    cin>>s;
    int summ_digits=0,i=0;
    for(;i<s.length();++i) {
        if (s[i]!='.') summ_digits += s[i]-48;
    }
    cout<<summ_digits<<endl;
    return 0;
}
 
Текущее время: 02:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru