Resultados da pesquisa a pedido "integer-overflow"
promoção inteira em c
Digamos que eu tenho uma máquina de 32 bits. Eu sei durantepromoção inteira as expressões são convertidas em: \ se todos os valores do tipo original puderem ser representados em int int de outra formaunsignedVocê poderia explicar o que ...
Como detectar estouro de multiplicação de números inteiros não assinados?
Eu estava escrevendo um programa em C ++ para encontrar todas as soluções deab = c, Ondea, b ec juntos, use todos os dígitos de 0 a 9 exatamente uma vez. O programa repetiu os valores dea ebe executou uma rotina de contagem de dígitos sempre ...
Como posso detectar estouro inteiro em 32 bits int?
Eu sei que esse tópico foi perguntado várias vezes, masminha pergunta é sobre o estouro total de 32 bits de int. Por exemplo: 11111111111111111111111111111111 + 00000000000000000000000000000001 = 00000000000000000000000000000000 //overflow!eu ...
Exponenciação modular para números altos em C ++
Então, eu tenho trabalhado recentemente em uma implementação do teste de primalidade de Miller-Rabin. Estou limitando-o a um escopo de todos os números de 32 bits, porque este é um projeto divertido que estou fazendo para me familiarizar com c ++ ...
Delphi: Como evitar o underflow do EIntOverflow ao subtrair?
A Microsoft já diz, na documentação do GetTickCount, que você nunca pode comparar a contagem de marcações para verificar se um intervalo passou. por exemplo.: Incorreto (pseudocódigo): DWORD endTime = GetTickCount + 10000; //10 s from now ... ...
Delphi: Como uso $ OVERFLOWCHECKS OFF para desativar as verificações de estouro?
Eu tenho um pouco de código que causa um underflow: var t1, t2, delta: DWORD: begin t1 := 0xffffff00; t2 := 0x00000037; delta := (t2 - t1);A própria subtraçãofaz gerar um overflow (underflow), mas não quero que o Delphi jogue umEIntOverflow ...
Como obtenho estouros inteiros reais no MATLAB / Octave?
Estou trabalhando em uma ferramenta de verificação para alguns códigos VHDL no MATLAB / Octave. Portanto, preciso de tipos de dados que gerem estouros "reais": intmax('int32') + 1 ans = -2147483648Mais tarde, seria útil se eu pudesse definir a ...
Qual é o caminho certo para encontrar a média de dois valores?
Recentemente eu aprendi que o excesso de número inteiro é um comportamento indefinido em C (questão secundária - também é UB em C ++?) Frequentemente, na programação C, você precisa encontrar a média de dois valoresa eb. No entanto ...
Verificação de estouro em adição assinada e grupos abelianos
Eu estava lendo sobre por que o código a seguir é de buggy: int tadd_ok ( int x, int y ) { int sum = x + y; return ( sum - x == y ) && ( sum - y == x ); }A explicação era que a adição do complemento de dois forma um grupo abeliano e, portanto, a ...
Como verificar se há excesso de número inteiro assinado em C sem comportamento indefinido?
Há (1): // assume x,y are non-negative if(x > max - y) error;E (2): // assume x,y are non-negative int sum = x + y; if(sum < x || sum < y) error; Qual é o preferido ou existe uma maneira melhor.