4 ms·
You are writing it differently with the goto. You can do the same with the for loop and it becomes symmetric again for (i = 0; i < n; ++i); for (i = n; i
by nedt 2y ago
You are writing it differently with the goto. You can do the same with the for loop and it becomes symmetric again
for (i = 0; i < n; ++i);
for (i = n; i >= 0; --i);
(Note: not sure if intended that backward should run more often and include i = n)
- trealira 2y agoTo be symmetric, the loops should read like this: for (i = 0; i < n; i++) for (i = n; --i >= 0; ) The second one could also be this: for (i = n - 1; i >= 0; i--) I say this because your backwards loop accesses the inclusive range [0, n] while your forwards range accesses [0, n - 1].
- Maxatar 2y agoYour post is a good example of how backwards iteration is so error prone and fragile. Your reverse iteration would result in an out of bounds access as well as unsigned integer overflow which results in an infinite loop.