Keeping relative time (simply) without RTC

This is how you post your code

#include <TimeLib.h>

int delay_sec=5;  // how many seconds between time samples?

void setup() {
 Serial.begin(9600);

}

void loop() {
  float Elapsed_sec=now(); //important to define these as 'float' for precision
  float Elapsed_min=Elapsed_sec/60; //important to define these as 'float' for precision
  Serial.print(Elapsed_min, 2); //time in min with 2 digits after comma
  Serial.print(" ; ");
  Serial.print(Elapsed_sec, 0); //time in min with 0 digits after comma
  Serial.println(); 
  delay(delay_sec*1000);

}

There are a few problems with this.
Firstly, its "blocking" code - so while in delay() it can do nothing else;
more importantly, if your program does anything else (eg the Serial.print(Elapsed_min, 2); )
(and Serial.begin(9600); is a very slow data rate)

or eg a data measurement the loop time will be 1000msec + other bits.

If you look at the BWOD sketch

you will see how you can use millis() to get the timing right - see how it uses the "interval" parameter.

Good explanation of using millis() here