3-18 c++