Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как написать эти алгебраические выражения? / 5 сообщений из 5, страница 1 из 1
28.05.2005, 22:37
    #33089207
fgfgf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как написать эти алгебраические выражения?
все переменные объявлены как целые.
1) A =A сложить с В, С и D, уменьшенными на 1. Результат разделить на 2.

Вначале написал так:
A=(A+(--B)+(--C)+(--D))/2; - Получил нужное значение, только без остатка. Изменил код на:
double A=(A+(double)(--B)+(--C)+(--D))/2; - Получается ноль. Почему?

2) Как программно записать это выражение?
Z = поразрядное "И" 2-8 разрядов X и 1-3 разрядов Y, сдвинутых вправо на 2 разряда
...
Рейтинг: 0 / 0
28.05.2005, 23:23
    #33089227
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как написать эти алгебраические выражения?
1) остаток от деления = (A+(--B)+(--C)+(--D))%2;
т.к. А - целое, дробной части у него быть не может. Это ведь целое.
2) не понял, может, нарисуешь?
------------------
- А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm
...
Рейтинг: 0 / 0
29.05.2005, 05:14
    #33089271
fgfgf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как написать эти алгебраические выражения?
1) Эти переменные объявлены как целые, и только в этом кусочке должны быть дробные. Я знаю что как-то можно сделать по такому принципу:
напр.:
int B=1, C=2;
double A = (double)B / C
Только у меня так не выходит...
А это выражение:
maXmo
(A+(--B)+(--C)+(--D))%2

выдает синтаксическую ошибку..

2) я сам не совсем понял, вот и спросил :)
...
Рейтинг: 0 / 0
29.05.2005, 09:51
    #33089298
Землекоп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как написать эти алгебраические выражения?
1) Опубликуй полность текст программы. Русский язык мало подходит для описания проблем программирования.

конструкция вида double A=(A+(double)(--B)+(--C)+(--D))/2; может вернуть абсолютно любое число, тк начальное значение A не определено.

2) Если дословно и биты нумеруются с единицы, то это так
Z = ((X&0xFE)&(Y&0x7))>>2;
Можно немножко оптимизировать, тогда
Z = (X&Y&4)>>2;
...
Рейтинг: 0 / 0
31.05.2005, 18:41
    #33093414
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как написать эти алгебраические выражения?
fgfgfИзменил код на:
double A=(A+(double)(--B)+(--C)+(--D))/2; - Получается ноль. Почему?
Намного проще написать так:

double r;
int a, b, c, d;
r = (a+(--b)+(--c)+(--d)) / 2.0;

А почему там ноль получается... да фиг его знает. Смотреть на код надо :)


fgfgf
2) Как программно записать это выражение?
Z = поразрядное "И" 2-8 разрядов X и 1-3 разрядов Y, сдвинутых вправо на 2 разряда
z = (x & 0xfe) ??? ((y >> 2) & 7);
Вместо вопросов подставь то что надо. Я не понял что тебе надо.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как написать эти алгебраические выражения? / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]