190 existe alguma maneira de obter valor absoluto de um número inteiro? por exemplo -8 to 8 Eu já tentei usar UInt () assumindo que ele converterá o Int em valor não assinado, mas não funcionou. ios iphone swift Niko Adrianus Yuwono fonte 8 cast / converso nunca deve usado para alterar o valor Bryan Chen Respostas: 413 A abs()função padrão funciona muito bem aqui: let c = -8 print(abs(c)) // 8 BS fonte Nice info man! Obrigado! Vou aceitar a resposta após 10 minutos :) Niko Adrianus Yuwono O que precisa ser importado para usar abs ()? Jarrod Smith 3 @JarrodSmith: import Foundation Adrian 3 Você pode importar Darwin ou Foundation YYamil Darwin não faz parte da Fundação? Marin 38 Com o Swift 5, você pode usar uma das duas maneiras a seguir para converter um número inteiro em seu valor absoluto. # 1 Obter o valor absoluto de uma propriedade Intfrommagnitude Inttem uma magnitudepropriedade magnitudetem a seguinte declaração: var magnitude: UInt { get } Para qualquer valor numérico x, x.magnitudeé o valor absoluto de x. O seguinte snippet de código mostra como usar a magnitudepropriedade para obter o valor absoluto em uma Intinstância: let value = -5 print(value.magnitude) // prints: 5 # 2 Obter o valor absoluto de um método Intfromabs(_:) Swift tem uma função numérica global chamada abs(_:)método. abs(_:)tem a seguinte declaração: func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric Retorna o valor absoluto do número fornecido. O seguinte trecho de código mostra como usar abs(_:)a função global para obter o valor absoluto em uma Intinstância: let value = -5 print(abs(value)) // prints: 5 Imanou Petit fonte print (abs (Int.min)) não funcionará. Existe alguma solução para o Swift 3? Ainda não atualizei meu projeto. bibscy 3 Oportunidade perdida para dizer "obtenha o valor absoluto em uma posição Int " LinusGeffarth 16/18 1 @bibscy Veja a explicação da Apple para entender por abs(Int8.min)que não pode funcionar e, portanto, cria um erro de estouro. Imanou Petit 7 Se você deseja forçar um número a mudar ou mantê-lo positivo. Aqui está o caminho: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar fonte fabs está obsoleto # Chewie The Chorkie 2 Se você deseja obter um valor absoluto de um double ou Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fonte Sim, você está certo, mas meu foco era fabs, desculpe-me Hamed
413 A abs()função padrão funciona muito bem aqui: let c = -8 print(abs(c)) // 8 BS fonte Nice info man! Obrigado! Vou aceitar a resposta após 10 minutos :) Niko Adrianus Yuwono O que precisa ser importado para usar abs ()? Jarrod Smith 3 @JarrodSmith: import Foundation Adrian 3 Você pode importar Darwin ou Foundation YYamil Darwin não faz parte da Fundação? Marin 38 Com o Swift 5, você pode usar uma das duas maneiras a seguir para converter um número inteiro em seu valor absoluto. # 1 Obter o valor absoluto de uma propriedade Intfrommagnitude Inttem uma magnitudepropriedade magnitudetem a seguinte declaração: var magnitude: UInt { get } Para qualquer valor numérico x, x.magnitudeé o valor absoluto de x. O seguinte snippet de código mostra como usar a magnitudepropriedade para obter o valor absoluto em uma Intinstância: let value = -5 print(value.magnitude) // prints: 5 # 2 Obter o valor absoluto de um método Intfromabs(_:) Swift tem uma função numérica global chamada abs(_:)método. abs(_:)tem a seguinte declaração: func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric Retorna o valor absoluto do número fornecido. O seguinte trecho de código mostra como usar abs(_:)a função global para obter o valor absoluto em uma Intinstância: let value = -5 print(abs(value)) // prints: 5 Imanou Petit fonte print (abs (Int.min)) não funcionará. Existe alguma solução para o Swift 3? Ainda não atualizei meu projeto. bibscy 3 Oportunidade perdida para dizer "obtenha o valor absoluto em uma posição Int " LinusGeffarth 16/18 1 @bibscy Veja a explicação da Apple para entender por abs(Int8.min)que não pode funcionar e, portanto, cria um erro de estouro. Imanou Petit 7 Se você deseja forçar um número a mudar ou mantê-lo positivo. Aqui está o caminho: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar fonte fabs está obsoleto # Chewie The Chorkie 2 Se você deseja obter um valor absoluto de um double ou Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fonte Sim, você está certo, mas meu foco era fabs, desculpe-me Hamed
38 Com o Swift 5, você pode usar uma das duas maneiras a seguir para converter um número inteiro em seu valor absoluto. # 1 Obter o valor absoluto de uma propriedade Intfrommagnitude Inttem uma magnitudepropriedade magnitudetem a seguinte declaração: var magnitude: UInt { get } Para qualquer valor numérico x, x.magnitudeé o valor absoluto de x. O seguinte snippet de código mostra como usar a magnitudepropriedade para obter o valor absoluto em uma Intinstância: let value = -5 print(value.magnitude) // prints: 5 # 2 Obter o valor absoluto de um método Intfromabs(_:) Swift tem uma função numérica global chamada abs(_:)método. abs(_:)tem a seguinte declaração: func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric Retorna o valor absoluto do número fornecido. O seguinte trecho de código mostra como usar abs(_:)a função global para obter o valor absoluto em uma Intinstância: let value = -5 print(abs(value)) // prints: 5 Imanou Petit fonte print (abs (Int.min)) não funcionará. Existe alguma solução para o Swift 3? Ainda não atualizei meu projeto. bibscy 3 Oportunidade perdida para dizer "obtenha o valor absoluto em uma posição Int " LinusGeffarth 16/18 1 @bibscy Veja a explicação da Apple para entender por abs(Int8.min)que não pode funcionar e, portanto, cria um erro de estouro. Imanou Petit 7 Se você deseja forçar um número a mudar ou mantê-lo positivo. Aqui está o caminho: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar fonte fabs está obsoleto # Chewie The Chorkie 2 Se você deseja obter um valor absoluto de um double ou Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fonte Sim, você está certo, mas meu foco era fabs, desculpe-me Hamed
7 Se você deseja forçar um número a mudar ou mantê-lo positivo. Aqui está o caminho: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar fonte fabs está obsoleto # Chewie The Chorkie 2 Se você deseja obter um valor absoluto de um double ou Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fonte Sim, você está certo, mas meu foco era fabs, desculpe-me Hamed
2 Se você deseja obter um valor absoluto de um double ou Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fonte Sim, você está certo, mas meu foco era fabs, desculpe-me Hamed
Respostas:
A
abs()
função padrão funciona muito bem aqui:fonte
Com o Swift 5, você pode usar uma das duas maneiras a seguir para converter um número inteiro em seu valor absoluto.
# 1 Obter o valor absoluto de uma propriedade
Int
frommagnitude
Int
tem umamagnitude
propriedademagnitude
tem a seguinte declaração:O seguinte snippet de código mostra como usar a
magnitude
propriedade para obter o valor absoluto em umaInt
instância:# 2 Obter o valor absoluto de um método
Int
fromabs(_:)
Swift tem uma função numérica global chamada
abs(_:)
método.abs(_:)
tem a seguinte declaração:O seguinte trecho de código mostra como usar
abs(_:)
a função global para obter o valor absoluto em umaInt
instância:fonte
abs(Int8.min)
que não pode funcionar e, portanto, cria um erro de estouro.Se você deseja forçar um número a mudar ou mantê-lo positivo.
Aqui está o caminho:
fonte
Se você deseja obter um valor absoluto de um double ou Int, use
fabs
func:fonte
fabs
, desculpe-me