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

Найти остаток от деления - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
ElShikari
 Аватар для ElShikari
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 35
10.03.2014, 17:18     Найти остаток от деления #1
Заданы два числа: N и K. Необходимо найти остаток от деления N на K.

Входные данные
Входной файл INPUT.TXT содержит два целых числа: N и K (1 <= N <= 10100, 1 <= K <= 109).
Выходные данные
В выходной файл OUTPUT.TXT выведите остаток от деления N на K.

Примеры
INPUT.TXTOUTPUT.TXT
1239 1615
24638746747645731289347483927 67847891001783
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kiborgdelto
70 / 72 / 27
Регистрация: 23.03.2011
Сообщений: 141
10.03.2014, 17:37     Найти остаток от деления #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# include <iostream>
# include <fstream>
using namespace std;
ofstream f2("OUTPUT.txt");
ifstream f1("INPUT.txt");
 
void main()
{
int N,K;
f1>>N;
f1>>K;
f2<<N%K;
system("pause");
}
второй приведённый пример не возможет, из-за того что значения выходят за предел доступных для типа int
tron737
8 / 8 / 4
Регистрация: 29.12.2013
Сообщений: 27
10.03.2014, 17:38     Найти остаток от деления #3
для второго примера почитай это
fishec
 Аватар для fishec
118 / 118 / 30
Регистрация: 07.09.2013
Сообщений: 337
10.03.2014, 17:42     Найти остаток от деления #4
Цитата Сообщение от ElShikari Посмотреть сообщение
1 <= N <= 10100
10100 имеется ввиду http://www.cyberforum.ru/cgi-bin/latex.cgi?{10}^{100} ?
ElShikari
 Аватар для ElShikari
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 35
10.03.2014, 17:52  [ТС]     Найти остаток от деления #5
10100 имеется ввиду http://www.cyberforum.ru/cgi-bin/latex.cgi?{10}^{100} ?
Да.
fishec
 Аватар для fishec
118 / 118 / 30
Регистрация: 07.09.2013
Сообщений: 337
10.03.2014, 18:12     Найти остаток от деления #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(){
    ifstream In("input.txt");
    ofstream Out("output.txt");
    string S;
    In >> S;
    long N;
    In >> N;
    int i=0;
    long cur=0;
    while (i < S.length()){
        while ( cur < N)
            cur= cur * 10 + S[i++]-'0';
        cur=cur % N;
    }   
    Out << cur;
    In.close();
    Out.close();
    return 0;
}
Добавлено через 4 минуты
По сути, это алгоритм деления уголком (в итоге получается остаток)
Анна199
0 / 0 / 0
Регистрация: 26.02.2014
Сообщений: 2
10.03.2014, 18:15     Найти остаток от деления #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(){
    ifstream In("input.txt");
    ofstream Out("output.txt");
    string S;
    In >> S;
    long N;
    In >> N;
    int i=0;
    long cur=0;
    while (i < S.length()){
        while ( cur < N)
            cur= cur * 10 + S[i++]-'0';
        cur=cur % N;
    }   
    Out << cur;
    In.close();
    Out.close();
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.03.2014, 18:24     Найти остаток от деления
Еще ссылки по теме:

Для двух целых чисел найти остаток и частное от целочисленного деления, частное от вещественного деления C++
C++ Найти остаток от деления целой части выражения
C++ Найти остаток от деления

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

Или воспользуйтесь поиском по форуму:
fishec
 Аватар для fishec
118 / 118 / 30
Регистрация: 07.09.2013
Сообщений: 337
10.03.2014, 18:24     Найти остаток от деления #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(){
    ifstream In("input.txt");
    ofstream Out("output.txt");
    string S;
    In >> S;
    long N;
    In >> N;
    int i=0;
    long cur=0;
    while (i < S.length()){
        while ( cur < N && i < S.length()) // тут добавил условие
            cur= cur * 10 + S[i++]-'0';
        cur=cur % N;
    }   
    Out << cur;
    In.close();
    Out.close();
    return 0;
}
Yandex
Объявления
10.03.2014, 18:24     Найти остаток от деления
Ответ Создать тему
Опции темы

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