Fully distributed algorithms for convex optimization problems