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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 66, средняя оценка - 4.68
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
#1

Деление по модулю - C++

28.09.2010, 18:28. Просмотров 8650. Ответов 2
Метки нет (Все метки)

Нужно вычислить следующее выражение
d = 3^(-1) mod 17680
Написал но вот % работает только с целыми числами а у меня виходыт 0.33333333 % 17680
C++
1
2
3
4
5
6
7
8
9
10
11
#include "stdafx.h"
#include <iostream>
#include <math.h>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    // d = 3^(-1) mod 17680 = 11787
    cout<<pow(3.0, -1) % 17680;
    return 0;
}
Всем спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.09.2010, 18:28     Деление по модулю
Посмотрите здесь:

деление по модулю 2 - C++
Здравствуйте такая задача есть массив g {111101} который заполнен таким образом и есть массив p {1111010000000} который заполнен вот так,...

Деление по модулю - C++
Здравствуйте. Пишу функцию деления по модулю: int ring(int num, int max) { return num - (max%num)*(num/max); } Для (12, 12)...

деление по модулю - C++
Вообщем пишу калькулятор и наткнулся на проблемку #include &quot;stdafx.h&quot; #include &lt;tchar.h&gt; #include &lt;stdio.h&gt; #include &lt;iostream&gt; ...

Деление по модулю % - C++
Даны два числа X и Y проверить истинность того что оба числа четные. // При записи (x%2) корректно не работает, а в примере ниже работает...

Деление по модулю 2 - C++
Добрый день уважаемые! Нужно написать алгоритм кодирования двоичных последовательностей циклическим кодом, и столкнулся вот с такой...

Деление по модулю отрицательных чисел - C++
Какие в математике правила для деления по модулю отрицательных чисел? Например -15(mod 26). Почему в этом случае С++(mvc++) дает...

Деление по модулю, работа с функцией rand() - C++
Мне нужно сгенерировать случайное число от 66 до 122, максимальное число RAND_MAX = 32767, мне нужно узнать на что нужно делить по модулю...

Найти произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами - C++
Дан одномерный массив, состоящий из N вещественных элементов. Найти произведение элементов массива, расположенных между максимальным по...

Найти произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами - C++
Дан одномерный массив, состоящий из N вещественных элементов. Найти произведение элементов массива, расположенных между максимальным по...

Найти произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами - C++
Дан одномерный массив, состоящий из N вещественных элементов. Найти произведение элементов массива, расположенных между максимальным по...

Найти произведение элементов массива, которые между максимальным по модулю и минимальным по модулю элементами - C++
В одномерном массиве, состоящем из n действительных элементов, найдите 2) произведение элементов массива, расположенных между...

Одномерный массив ( вычислить произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами) - C++
Необходимо вычислить произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dexter
285 / 145 / 16
Регистрация: 13.10.2009
Сообщений: 164
28.09.2010, 18:58     Деление по модулю #2
Нахождение обратного элемента по модулю делается абсолютно по другому.
Самый распространенный это используя алгоритм Евклида. Исходников его довольно много, если будет желание найдете. Вот два примерчика как можно по-другому искать, если на быструю руку надо (Работают только если обратные существуют).
C++
1
2
3
4
5
6
7
int Obr1(int x,int mod)//в вашем случае x=3,mod=17680, но при x=0 будет висеть =)
{
    int res=x;
    while(res*x%mod!=1)
        res=(x*res)%mod;
    return res;
}
или
C++
1
2
3
4
5
6
7
int Obr2(int x,int mod)
{
    int res=0;
    while(x*res%mod!=1)
        res++;
    return res;
}
А то что вы написали, очень улыбнуло Спасибо за поднятое настроение.
platedz
0 / 0 / 0
Регистрация: 25.12.2012
Сообщений: 4
05.01.2013, 20:40     Деление по модулю #3
А мне вот интересно, деление по модулю это школьная программа или нет. И если да, то хоть в каком классе ее проходят?
Ответ Создать тему
Опции темы

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