If you took ITP 115 and now want to take CSCI 103 (perhaps for fun or because you added a CSCI major / minor), you would need to take CSCI 102 first. However, there is a CSCI 102 placement exam to pass out of CSCI 102.
The CSCI 102 placement exam covers fundamental topics in programming, and it can be completed in Python, Java, or C++. If you have developed a strong grasp of the concepts of ITP 115, it definitely worth trying to pass the placement exam (it would be good to brush up on core Python topics first).
If you pass the placement exam, I’d strongly recommend doing some preparation before you start CSCI 103 since it is taught in C++. While it is common for programmers to switch and learn new languages, it will assist your transition if you do some self-study. The key things you want to cover are 1) syntax of C++, and 2) places where C++ differs strongly from Python (in introductory topics). Here are some topics you can be on the lookout for:
- Basic syntax
- “Typing”: Python is dynamically typed whereas C++ is strictly typed
- Function parameters: C++ has more way you can pass arguments to a function
- C++ is compiled, not interpreted like Python
- C++ IDE isn’t PyCharm. One common IDEs for C++ is Visual Studio Code
I’ve created and gathered together some resources that might be helpful
- C++ Syntax Overview
- Common C++ Operations Compared to Python and Java
- C++ for Python Programmers (I’d probably only worry about going up to 5.2 arrays)
- CPlusPlus Tutorial (again, you probably don’t need to go past “arrays”)