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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.63
AphinaShi
0 / 0 / 0
Регистрация: 05.05.2013
Сообщений: 11
#1

Задача найти сумму первых трех цифр дробной части вещественного числа - C++

21.03.2014, 19:11. Просмотров 1194. Ответов 3
Метки нет (Все метки)

Программа работает. Но мне не понятно, почему она работает только если вычитать 48? Изначально я делала алгоритм без того и считалось неправильно. Вариант с 48 нашёлся с одного из готовых кодов, но принципа этого действия я не понимаю.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
const int Size  = 40;
int main()
{
 
char num [Size];
int answer = 0;
cout << "Enter" "\n";
cin.get(num, Size);
    for (int i = 0; i < Size; i++)
        if (num [i] == ',')
            answer += (int) (num[i+1]-48) +  (int) (num[i+2]-48) + (int) (num[i+3]-48);
 
cout << answer <<endl;
 
    keep_window_open ();
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2014, 19:11     Задача найти сумму первых трех цифр дробной части вещественного числа
Посмотрите здесь:
C++ Вывести на экран 1 или 0 в зависимости от того, есть ли среди первых трех цифр дробной части заданного положительного вещественного числа цифра ноль
C++ Определить, есть ли среди k-первых цифр дробной части вещественного числа цифра 0
C++ Определить, встречается ли введенная цифра M среди первых трёх цифр дробной части вещественного числа P
C++ Найти сумму первых 5 цифр дробной части действительного числа.например для числа 23,1680989 она равна 24.програма на С++
C++ Найти сумму первых 5 цифр дробной части действительного числа.например для числа 23,1680989 она равна 24.Програма на С++
Определить равна ли сумма k цифр дробной части заданного вещественного числа сумме цифр целой части C++
C++ Определения, равна сумма цифр целой части вещественного числа сумме такого же количества цифр в дробной части
C++ Напечатать произведение трех первых цифр после десятичной точки вещественного числа, веденного с клавиатуры
C++ Последовательность в дробной части вещественного числа
Найти вещественные числа, у которых сумма цифр целой и дробной части равны C++
C++ Определить и вывести первую цифру из дробной части положительного вещественного числа
Написать программу: сумма первых трех цифр числа равна сумме его последних трех цифр. C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6321 / 5905 / 1913
Регистрация: 18.12.2011
Сообщений: 15,181
Завершенные тесты: 1
21.03.2014, 19:54     Задача найти сумму первых трех цифр дробной части вещественного числа #2
48 это код буквы ноль.
Можно написать так
C++
1
 answer += (int) (num[i+1]-'0') +  (int) (num[i+2]-'0') + (int) (num[i+3]-'0');
AphinaShi
0 / 0 / 0
Регистрация: 05.05.2013
Сообщений: 11
21.03.2014, 19:59  [ТС]     Задача найти сумму первых трех цифр дробной части вещественного числа #3
Большое спасибо, а зачем в принципе его вычитать?
fishec
119 / 119 / 30
Регистрация: 07.09.2013
Сообщений: 338
21.03.2014, 20:10     Задача найти сумму первых трех цифр дробной части вещественного числа #4
Цитата Сообщение от AphinaShi Посмотреть сообщение
а зачем в принципе его вычитать?
Чтобы получить цифру, соответствующую символу. Например '5'-'0'=53-48=5, '1'-'0'=49-48=1, '9'-'0'=57-48=9
То есть если просто написать '1'+'2' число 3 не получится. А если написать '1'-'0' + '2'-'0' как раз получится 3.
Yandex
Объявления
21.03.2014, 20:10     Задача найти сумму первых трех цифр дробной части вещественного числа
Ответ Создать тему
Опции темы

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