Tai PAUL
Joined
Activity
Posted in Seeking guidance from above!
I do have another input_functions file rb. so that the system understands the syntax I'm more familiar with, apologies for any confusion!
Display the prompt and return the read string
def read_string prompt
puts prompt
value = gets.chomp
end
Display the prompt and return the read float
def read_float prompt
value = read_string(prompt)
value.to_f
end
Display the prompt and return the read integer
def read_integer prompt
value = read_string(prompt)
value.to_i
end
Read an integer between min and max, prompting with the string provided
def read_integer_in_range(prompt, min, max)
value = read_integer(prompt)
while (value < min or value > max)
puts "Please enter a value between " + min.to_s + min.to_s + ": "
value = read_integer(prompt);
end
value
end
Display the prompt and return the read Boolean
def read_boolean prompt
value = read_string(prompt)
case value
when 'y', 'yes', 'Yes', 'YES'
true
else
false
end
end
Test the functions above
=begin
def main
puts "String entered is: " + read_string("Enter a String: ")
puts "Boolean is: " + read_boolean("Enter yes or no:").to_s
puts "Float is: " + read_float("Enter a floating point number: ").to_s
puts "Integer is: " + read_integer_in_range("Enter an integer between 3 and 6: ", 3, 6).to_s
end
main
=end
Posted in Seeking guidance from above!
Hi there, I'm new to ruby and seeking help from better/experienced peers for guidance.
I'm facing an issue with executing in creatings an array for the scenario of train data.
My current skeleton for ruby is below and will appreciate if anyone can help in commenting what I should be correcting or where I should be focus on.
I've broken my code into 3 sections if to help in clarity of what I need to do for each command (hope to hear advice from one and all!)
Thanks in advance and cheers for your time (I hope that this code is almost done but with coding its hard to tell sometimes)
---==== start of code ===---
Section 1. Train data from user - Function called read_train() that reads from the user input values for each of the fields in a train record and returns the completed record. Also included: Trains Array Data - function called read_trains() that calls the read_train() and returns an array of each input train.
def read_train()
train_name = read_string('Enter train name:')
train_id = read_integer('Enter train id:')
origin = read_string('Enter station of origin:')
destination = read_string('Enter final destination station:')
end
def read_trains()
trains = Array.new()
index = 0
while index < quantity
train = read_train()
trains << train
index += 1
end
return trains
end
Section 2. Print train data - function called print_train(train) that takes a train record and writes each of the fields to the terminal with a description for the field as well as the field value. Also included: Print collated trains - function called print_trains(trains); that calls the print_train(train) procedure for each train in the array.
def print_train(train)
puts(train_name)
puts(train_id)
puts(origin)
puts(destination)
end
def print_trains(trains)
count = quantity
index = 0
while index < count
print_train
index += 1
end
end
Section 3. Main program - Write a program to execute the following scenario needed.
def main()
quantity = read_integer('How many trains are you entering:')
read_trains = read_train
trains = read_trains()
print_trains(trains)
end
---==== end of code ===---