Below are the problem sets for a course I gave at the PROMYS program at Boston University in the summer of 2000. The topic was zeta and L-functions, not assuming a background in complex analysis. This necessitated a treatment in the spirit of Dirichlet or Euler, but not Riemann. That is, typically theorems were proved by looking at s near 1.