Вопросы по теме 'integer-arithmetic'
Как использовать целочисленную арифметику для преобразования дробей в числа с плавающей запятой в python?
Что мне нужно сделать, так это использовать целочисленную арифметику для преобразования дробей в числа с плавающей запятой. Необходимое количество знаков после запятой указывается в виде переменной DECIMALS . Каждая дробь содержится в кортеже целых...
896 просмотров
schedule
12.03.2024
Как проверить, является ли int четным
Вероятно, это простое решение, которое просто ускользает от меня. В частности, я динамически создаю местоположения на холсте, используя функцию sin() для равноудаленных точек на окружности. Как только эти точки созданы, я анимирую фигуру,...
1530 просмотров
schedule
23.11.2023
Преобразование списка цифр в число
Мне было интересно, есть ли способ взять список чисел (цифр) и обрезать числа вместе, чтобы получить одно большое число (не сложение) в схеме. Например, я хотел бы
(foo '(1 2 3 4))
;=> 1234
Есть ли в Scheme встроенная функция для этого?
156 просмотров
schedule
12.09.2023
Является ли это арифметическим вычислением переполнения?
Поэтому, когда я читаю книгу, в ней говорится, что переполнение не может происходить при добавлении разных знаков и вычитании одного и того же знака. Но у меня есть вопрос, когда я это делаю: 185 - 122 Я преобразовал двоичный код 122 в 2-е дополнение...
2728 просмотров
schedule
24.04.2022
Флаг переполнения и переноса
Контекст
Я прочитал в учебнике, что...
Сложение и вычитание не могут привести к переполнению. Цитировать,
Переполнение не может произойти после сложения, если одно число положительное, а другое отрицательное, поскольку добавление...
1383 просмотров
schedule
12.11.2023
Как избежать целочисленного переполнения при использовании функции pow при делении на число?
У меня есть следующее заявление.
d = (pow(a,2*l+1)+1)/(val+1);
Здесь,
val , a и l - переменные, не имеющие отношения к вопросу.
числитель может превышать диапазон long long int.
знаменатель является делителем числителя....
1247 просмотров
schedule
11.07.2023
Деление двух двойных целых чисел в Forth
Я использую Gforth, и я искал стандартное слово Forth для деления двух двойных целых чисел или, по крайней мере, смешанное деление двойного целого числа на одно целое, но в результате поддерживающее двойные целые числа. Кажется, нет ни одного....
235 просмотров
schedule
11.12.2022
Как современные процессоры выполняют целочисленные арифметические операции?
На этой странице Википедии упоминается сложность вычисления различных математических операций, включая сложение, вычитание, умножение и деление. Я хотел бы сосредоточиться на этих четырех.
Во-первых, сложность каждой из упомянутых операций...
983 просмотров
schedule
20.01.2024
Как возможно, что операция БИТОВОЕ И занимает больше тактов ЦП, чем операция АРИФМЕТИЧЕСКОЕ СЛОЖЕНИЕ в программе на языке C?
Я хотел проверить, действительно ли побитовые операции выполняются быстрее, чем арифметические операции. Я думал, что они были.
Я написал небольшую программу на C, чтобы проверить эту гипотезу, и, к моему удивлению, сложение занимает в среднем...
1091 просмотров
schedule
16.06.2022
Написание доказательств простой арифметики в Coq
Я хотел бы доказать простые вещи, например, для каждого натурального числа n существует натуральное число k такое, что:
(2*n + 1)^2 = 8*k + 1
Как можно получить такое доказательство? Думал разбить на случаи, когда n нечетно или четно, но не...
593 просмотров
schedule
25.06.2022
Найдите количество различных способов записи числа 1 в виде суммы дробей, в каждом из которых числитель равен 1, а знаменатель равен степени 2.
Мне дано число n , и я должен найти количество различных способов записать число 1 в виде суммы n дробей, где каждая дробь имеет следующий формат:
Числитель всегда равен 1.
Знаменатель — это степень числа 2 (например, 2^1, 2^2 и т. д.)....
252 просмотров
schedule
26.10.2023
Почему 2 * x * x быстрее, чем 2 * (x * x) в Python 3.x для целых чисел?
Следующее целочисленное умножение Python 3.x занимает в среднем от 1,66 до 1,77 с:
import time
start_time = time.time()
num = 0
for x in range(0, 10000000):
# num += 2 * (x * x)
num += 2 * x * x
print("--- %s seconds ---" % (time.time() -...
3498 просмотров
schedule
06.10.2022
Устанавливает ли вычитание AVR одинаковых чисел C-флаг SREG?
Краткая предыстория: инструкция BRLO (переход, если ниже) имеет значение 1. ... выполнить переход, если C-флаг == 1; 2. ... выполнить переход, если Rd ‹ Rr (из инструкции CP)
Мой вопрос: я буду использовать 4-битные числа для демонстрации....
262 просмотров
schedule
01.04.2023
Преобразование 12-битного числа в 2 8-битных байта
На всю жизнь я не могу понять, как преобразовать (максимальное) 12-битное число в 2 8-битных байта (где одно из значений, очевидно, не сможет превышать 4 бита).
Например, я могу преобразовать целые числа 7 (4-битное значение) и 60 (8-битное...
563 просмотров
schedule
22.01.2024
Переполнение происходит из-за добавления?
Здравствуйте и извините за хромое название этого поста, просто не смог найти лучшего.
Итак, я решаю упражнение Codility под названием NumberOfDiscIntersections. Решение требует некоторой базовой сортировки и некоторых незначительных арифметических...
56 просмотров
schedule
17.02.2023
Как я могу уменьшить масштаб x на n/d, когда x*n переполняется?
Моя проблема ограничена целыми числами без знака из 256 бит.
У меня есть значение x , и мне нужно уменьшить масштаб на коэффициент n / d , где n < d .
Простое решение, конечно, x * n / d , но проблема в том, что x * n может переполниться....
96 просмотров
schedule
09.12.2022
Длинное умножение пары значений uint64
Как я могу безопасно умножить пару значений uint64 , чтобы получить результат в виде пары LSB и MSB одного типа?
typedef struct uint128 {
uint64 lsb;
uint64 msb;
};
uint128 mul(uint64 x, uint64 y)
{
uint128 z = {0, 0};
z.lsb = x *...
54 просмотров
schedule
20.06.2023
Возможна полная потеря точности в предупреждении о модуле и неправильные результаты при использовании определенных чисел с функцией модуля
Я написал эту функцию в R, и у меня есть несколько проблем с оператором модуля в этой функции. Цель этой функции — вернуть 1 до n+1 десятичного разряда, если число содержит какие-либо числа после запятой, в противном случае вернуть 1 для любого...
74 просмотров
schedule
18.01.2023
Как я могу вычислить a * b / c, когда и a, и b меньше, чем c, но a * b переполняется?
Предполагая, что uint является самым большим интегральным типом на моей платформе с фиксированной точкой, у меня есть:
uint func(uint a, uint b, uint c);
Что должно вернуть хорошее приближение a * b / c .
Значение c больше, чем значение...
230 просмотров
schedule
15.02.2024
Почему нельзя добавить два адреса вместе?
Допустим, я определил две переменные x и y :
int x = 5;
int y = 6;
Я могу получить адрес, где хранится x , через:
cout << &x << endl; // 0x61fe18
Что является шестнадцатеричным числом. Теперь, если я хочу напечатать...
131 просмотров
schedule
18.04.2024