input: Write a python function to generate a report based on completed tasks with their respective percentages.
  assert generate_report(14, 3, 4, 7) == "In the past week, a total of 14 tasks were completed. Analysis tasks accounted for 21.428571428571427%, design tasks accounted for 28.57142857142857%, and programming tasks accounted for 50.0% of all tasks completed."
  assert generate_report(20, 5, 10, 5) == "In the past week, a total of 20 tasks were completed. Analysis tasks accounted for 25.0%, design tasks accounted for 50.0%, and programming tasks accounted for 25.0% of all tasks completed."
  assert generate_report(10, 2, 3, 5) == "In the past week, a total of 10 tasks were completed. Analysis tasks accounted for 20.0%, design tasks accounted for 30.0%, and programming tasks accounted for 50.0% of all tasks completed."
output: def generate_report(total_tasks, analysis_tasks, design_tasks, programming_tasks):
      analysis_percentage = (analysis_tasks / total_tasks) * 100
      design_percentage = (design_tasks / total_tasks) * 100
      programming_percentage = (programming_tasks / total_tasks) * 100
      return (f"In the past week, a total of {total_tasks} tasks were completed. "
              f"Analysis tasks accounted for {analysis_percentage}%, "
              f"design tasks accounted for {design_percentage}%, and "
              f"programming tasks accounted for {programming_percentage}% of all tasks completed.")