I'm making a very simple code here to practice with Ruby and going to implement a simple "client, product, sell" interface
def menuinicial
print "1 - Cliente
2 - Produto
3 - Venda
0 - Sair do programa
insira o código de manipulação desejado: ";
end
here is the initial menu
def manipclientes
while true
puts "\n1 - Adicionar cliente"
puts "2 - Visualizar clientes cadastrados"
puts "3 - Editar cliente"
puts "4 - Remover cliente"
puts "0 - Retornar ao menu anterior"
print "\nInsira a opção desejada: "
escolha = gets.chomp
return if escolha == "0"
if escolha == "1" # "Adicionar cliente"
print "\ninsira o nome do cliente: "
nome = gets.chomp
print "\ninsira o endereço do cliente: "
rua = gets.chomp
print "\ninsira o RG do cliente: "
rg = gets.chomp
print "\ninsira a data de nascimento do cliente( Ano, mês, dia): "
ano = gets.chomp
mes = gets.chomp
dia = gets.chomp
data = Time.new(ano.to_i, mes.to_i, dia.to_i)
a = Cliente.new(nome, rua, rg, data)
clientes.push(a) #adicionando a ao array
end
here is part of the code that is having issue, just right when I try to use the "Client.new" returns me the error
"in manipclientes': undefined local variable or method `clientes' for main:Object (NameError)"
and below there's the main code partially ready to go
# main
while true
menuinicial
init = gets.chomp
break if init == "0"
manipclientes if init == "1"
manipprodutos if init == "2"
end
I can get the code working when I don't place it in "functions" but then I can't return to the initial menu (I've made a post right here)
Aucun commentaire:
Enregistrer un commentaire