to simplify the problem.. is it possible to run a two different loop at the same time??
Those for loops are not running at the same time. They are running one after the other.
the GSM/GPRS shield need 3sec delay before sending is done..
that's why the loop stuck at 10 and send message again and again..
It cannot simply be the 3 second delay during the message sending that is causing the for loop to stall at a value of 10. That would certainly mess up the timing if you use the delay() function but the for loop would then simply take longer to run and the timing would not be accurate.
You have not answered my earlier question about the value of seconds printed if you use a for loop with the send message function inside it. Does the for loop really
stall at 10 ?
Using the BlinkWithoutDelay principle as suggested by others would get round the timing problem, at least within the limits of accuracy that the Arduino can provide without an external time reference.