input: Write a function that solves the "Tower of Hanoi" problem for any given number of disks. The function should print the sequence of moves required to solve the problem, where each move involves moving a disk from one rod to another. The function should recursively move the disks.
  
  assert solveTowerOfHanoi(3, 'A', 'C', 'B')
  # Output:
  # Move disk 1 from rod A to rod C
  # Move disk 2 from rod A to rod B
  # Move disk 1 from rod C to rod B
  # Move disk 3 from rod A to rod C
  # Move disk 1 from rod B to rod A
  # Move disk 2 from rod B to rod C
  # Move disk 1 from rod A to rod C
  
  assert solveTowerOfHanoi(1, 'A', 'C', 'B')
  # Output:
  # Move disk 1 from rod A to rod C
output: def solveTowerOfHanoi(n, source, target, auxiliary):
      if n == 1:
          print(f"Move disk 1 from rod {source} to rod {target}")
          return
      solveTowerOfHanoi(n-1, source, auxiliary, target)
      print(f"Move disk {n} from rod {source} to rod {target}")
      solveTowerOfHanoi(n-1, auxiliary, target, source)