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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
лыс
1 / 1 / 0
Регистрация: 04.11.2012
Сообщений: 50
#1

Длинная арифметика (найти остаток при делении на 7) - C++

29.12.2012, 22:19. Просмотров 1146. Ответов 5
Метки нет (Все метки)

Уважаемые программисты! Задача на длинную арифметику (никогда такую не решал, потому хочу разобраться. Математически понимаю, а как написать код не знаю).
Сама задача такова: нужно найти остаток при делении очень длинного числа (до 50 знаков) на 7. Приведите, пожалуйста, код.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2012, 22:19     Длинная арифметика (найти остаток при делении на 7)
Посмотрите здесь:

Выведите все числа на отрезке от a до b, дающие остаток c при делении на d C++
C++ Найти сумму таких чисел в диапазоне [a;b], у которых остаток от деления на 7 такой же, как и у b при делении на 7.
Найти те числа, что при делении на 7 дают остаток 1, 2, или 5 C++
C++ Найти те члены последовательности, которые при делении на 5 дают остаток 1
C++ Найти те члены последовательности, которые при делении на 7 дают остаток 1, 2, 5.
C++ Цикл с параметром (for): Найти сумму чисел в диапазоне [a;b], которые при делении на 5 дают остаток 3
Найти частное и остаток при делении а на b, не используя div и mod C++
Найти остаток при делении числа a на число b C++
C++ Найти число которое делится на 7, а при делении на 2, 3, 4, 5 и 6 дает остаток 1
C++ Найти сумму чисел в диапазоне [a;b], у которых остаток от деления на 7 такой же, как и у b при делении на 7
Остаток от деления (длинная арифметика) C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Somebody
2775 / 1589 / 142
Регистрация: 03.12.2007
Сообщений: 4,162
Завершенные тесты: 1
29.12.2012, 22:46     Длинная арифметика (найти остаток при делении на 7) #2
Цитата Сообщение от лыс Посмотреть сообщение
Математически понимаю, а как написать код не знаю
Может быть, не так понимаешь? Это даже длинной арифметикой трудно назвать...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <string>
 
int main()
{
    using namespace std;
    string s;
    getline(cin, s);
    unsigned r = 0;
    for (char c : s)
        r = (r * 10 + (c - '0')) % 7;
    cout << r;
}
лыс
1 / 1 / 0
Регистрация: 04.11.2012
Сообщений: 50
30.12.2012, 10:22  [ТС]     Длинная арифметика (найти остаток при делении на 7) #3
Somebody, при компиляции выскакивает ошибка: range-based 'for' loops are not allowed in C++98 mode
А в чем ошибка?
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12508 / 7070 / 794
Регистрация: 27.09.2012
Сообщений: 17,457
Записей в блоге: 2
Завершенные тесты: 1
30.12.2012, 10:29     Длинная арифметика (найти остаток при делении на 7) #4
а так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <string>
int main()
{
    using namespace std;
    string s;
    getline(cin, s);
    unsigned r = 0;
    for(std::string::iterator c=s.begin();c<s.end();++c)
        r = (r * 10 + (*c - '0')) % 7;
    cout << r;
     return 0;
}
лыс
1 / 1 / 0
Регистрация: 04.11.2012
Сообщений: 50
30.12.2012, 11:57  [ТС]     Длинная арифметика (найти остаток при делении на 7) #5
Спасибо, разбираюсь в ваших программах.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
30.12.2012, 12:17     Длинная арифметика (найти остаток при делении на 7) #6
Цитата Сообщение от Somebody Посмотреть сообщение
Это даже длинной арифметикой трудно назвать...
У него остаток от деления длинного на короткое.
Yandex
Объявления
30.12.2012, 12:17     Длинная арифметика (найти остаток при делении на 7)
Ответ Создать тему
Опции темы

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