CS446 first programming assignment