Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.11.2008, 20:36   #1
lazy
Новичок
Джуниор
 
Регистрация: 18.11.2008
Сообщений: 2
По умолчанию Закодить простую функцию

Попросили решить простую задачку по C++. Создание класса, конструктор-деструктор функции класса. Все понятно и просто. Да вот беда, одной из фукцний класса нужно вычислять значение лежащее в диапазоне от 0 до 126. И предлагается формула. А понять ее мне не по зубам т.к. прогуливал математику Причем я нюхом чую, что вопрос - детсадовский, да спросить некого

Формула выглядит вот так http://slil.ru/26345921 картинка весит 5 кб.

Если не трудно написать саму функцию на Сях - будет супер.
Буду признателен, если объясните необразованному смысл формулы.
Ну, или на худой конец - ткните носом в мануал, где написано что за зверь такой (mod 127) а то что то никак не вкурю

Заранее спасибо за ответы.
lazy вне форума Ответить с цитированием
Старый 18.11.2008, 21:51   #2
Ivan_32
somewhere else
Участник клуба
 
Аватар для Ivan_32
 
Регистрация: 17.07.2008
Сообщений: 1,409
По умолчанию

mod - деление по модулю(или остаток что ли..не помню) только в паскале...
7 mod 2=3 вроде ну или 7 mod 2 = 1
а на картинке недописанное выражение, или может быть b mod 127

На сях
Деление по модулю это
int a;
int b;
int c=a/b
int как его не крути в double или float не превратится))
а остаток от деление вроде c=a%b

Прошу простить если ошибся(и поправить дабы не преумножать незнание) давно не писал на С/С++.
"Тяжело в учении, легко в бою" - А.В. Суворов

Последний раз редактировалось Ivan_32; 18.11.2008 в 21:54.
Ivan_32 вне форума Ответить с цитированием
Старый 18.11.2008, 23:00   #3
filosof_x86
...
Форумчанин
 
Аватар для filosof_x86
 
Регистрация: 01.06.2008
Сообщений: 134
По умолчанию

Что-то мне так кажется, что функция там должна быть
Xn+1 = (a*Xn + b) mod 127

mod – это деление по модулю. Результатом этой операции является остаток от деления. В Си mod = %
filosof_x86 вне форума Ответить с цитированием
Старый 19.11.2008, 16:51   #4
spark-roman
Пользователь
 
Регистрация: 25.10.2008
Сообщений: 20
По умолчанию

Диапазон от 0 до 126 будет задаваться остатком от деления на 127.По-моему так
Код:
int func(int x){
    return (a*x+b)%127;
}
spark-roman вне форума Ответить с цитированием
Старый 19.11.2008, 16:58   #5
lazy
Новичок
Джуниор
 
Регистрация: 18.11.2008
Сообщений: 2
По умолчанию

Пожалуй других вариантов тут и не будет. Скорее всего вы абсолютно правы, форумчане. Спасибо всем откликнувшимся.
lazy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите написать простую игрушку на С++ soktahan Общие вопросы C/C++ 2 16.11.2008 21:16
Помогите решить простую задачу Teh Общие вопросы Delphi 4 24.04.2008 07:37
Помогите решить простую задачу по C++ steal13 Общие вопросы C/C++ 6 03.01.2008 09:40