I am trying to generate float
values between -1 and 1 to test if they are within the defined limits in order to create a vector with the amount of data I want only that I am only able to generate% between 0 and 1 through the function float
in the function that I defined, I know there is the random()
function but I am not able to enter it in the uniform()
function, my code is as follows:
from random import random # para gerar os nums aleatorios com ponto flutuante
"""
Valores de Teste
"""
"""
Função de criação de vetor de valores aleatórios entre 0 e 1
"""
"""
Limites
"""
limite_max=0.8# limite máximo
limite_min=-0.8# limite mínimo
"""
Gerar valores para teste
Função de criação de vetor de valores aleatórios entre 0 e 1
"""
def criavetor(dados):
val=[]
for i in range(dados): # fazer isto (N) vezes
val.append(random()) # adiciona o numero seguinte gerado aleatoriamente entre 0 e 1 ao vetor vec
return val
"""
# Inserção da quantidade de valores a gerar
"""
dados = int(input('Quantidade de valores a serem gerados:'))
val = criavetor(dados)# a variável global val é igual aos dados da função criavetor(dados)
"""
Comparação entre os valores gerados e os limites máximo e mínimos
se os valores estão dentro dos limites definidos estão OK, se estiverem fora desses limites estão NOT OK
"""
for x in val:
print("\n")
print("O valor de x é: ", round(x, 3))
if x >= limite_min and x <= limite_max:
print("OK")
else:
print("NOT OK")
The output when I run the code is as follows:
Quantidade de valores a serem gerados:5
O valor de x é: 0.522
OK
O valor de x é: 0.973
NOT OK
O valor de x é: 0.122
OK
O valor de x é: 0.218
OK
O valor de x é: 0.74
OK