При генерации случайных чисел CGFloat в диапазоне, сокращается до 1 знака после запятой

Я нашел две формулы для генерации случайных чисел между двумя числами в Swift. Первый (самый распространенный) это:

let randomNum = CGFloat((arc4random_uniform(UInt32(upperNum-lowerNum)) )+ CGFloat(UInt32(lowerNum)))` which gives a number as X.0 as a solution (random whole number)

Чтобы получить полное значение CGFloat X.xxxxxxxxxxxxxx, это работает:

let randomNum = CGFloat(arc4random()) / CGFloat(UINT32_MAX) * abs(lowerNum - upperNum) + min(lowerNum, upperNum)

почему первый усекается до целого числа?

0 ответов

Другие вопросы по тегам