Dealing with piecewise arrays

I want to perform the following in Ruby, could someone please help
translate this pseudocode?

  1. Read in a time series in a columnar format from an external file
    (covered elsewhere in this forum, including for completeness)
    given data triplets: time, value, error

  2. Check for discontinuities in data:
    if [time(i+1) - time(i)] > some_value, then
    store this piece of triplet array and give
    it a address (say piece_1)
    continue reading until another discontinuity is
    encountered
    store the new piece of triplet array with
    new address (piece_2)
    until end of file

  3. Write out each piece as a separate file with meaningful filenames
    based on the time of the array above, so the file written for piece_1
    would be called “time(i)_time(i+n).dat” where the time array is a
    continuous array without gaps (no gaps greater than some_value deduced
    in step 2).

Thanks in advance
Yaj