Hi Markus,
I understand that you have a loop in your code that contains multiple "if-else if...else" conditional statements. Your objective is to keep a log of which conditional statement is triggered in each iteration of the loop.
Here is a solution to achieve the above use case using a 2D matrix as a data structure to log information:
- Create a 2D zeros matrix of size (m,n), where “m” and “n” corresponds to the number of loop iterations and number of conditional statements inside the loop respectively.
- Since the conditional statements are mutually exclusive, in any iteration there is only one condition which evaluates to “true”. Acknowledge this event by marking “1” in the data structure.
- For any iteration “n”:
- Store the count for “condition 1” my marking 1 in the nth row and 1st column.
- Store the count for “condition 2” my marking 1 in the nth row and 2nd column and so on...
As a suggestion, if you are memory constrained, you may optimize the approach using bit manipulation techniques to store the log in a 1D array of size (m,1) instead of 2D matrix of size (m,n).
I hope you find the provided solution useful, and this helps you keep a log of which conditional statement is triggered in each iteration of the loop.
Regards,
Vinayak Luha