SET start offset of first password picture SET start offset of first password picture SET FOR password pictures from the second password picture SET cued offset of password picture SET cued offset of password picture IF cued  = start AND cued  = start THEN //Special scenario SET target = cued SET target = cued ELSE //Subtract and are intermediate values to get the //direction and values (−1, 0, 1) //Difference and are used to determine whether the //cued picture is on the imaginary line (Scenario 2) SET subtract = cued  − start SET subtract = cued  − start SET difference = SET difference = SET direction = 0 SET direction = 0 SET magnitude = 1 SET magnitude = 1 IF difference != 0 THEN SET direction = subtract /difference END IF IF difference != 0 THEN SET direction = subtract /difference END IF IF difference = 0 OR difference = 0 OR difference = difference THEN //Scenario 2, distance from edge as magnitude IF direction THEN SET magnitude = start ELSE IF SET magnitude = maximum Offset − start END IF IF direction THEN SET magnitude = start ELSE IF SET magnitude = maximum Offset − start END IF //Prevents the target picture from being outside of grid //when the direction is diagonal IF difference = difference THEN IF magnitude > magnitude THEN SET magnitude = magnitude ELSE SET magnitude = magnitude END IF END IF END IF SET target = start + (direction * magnitude ) SET target = start + (direction * magnitude ) IF target = cued AND target = cued THEN //Scenario's 2 exception SET target = target  − direction SET target = target  − direction END IF END IF SET start = target SET start = target INCREMENT END FOR
Algorithm 1: Pseudocode for the proposed algorithm.