third programming assignment