List of Novice to Intermediate programs to try and make in C++

I'm currently trying to learn C++(watching TheNewBoston) and was hoping you guys could give me some ideas for programs to make that are somewhere between novice and intermediate in difficulty.

1 Like

https://projecteuler.net/

A great place to help programmers practice programming

1 Like

I understand the purpose of it and that it can be very helpful but I'd rather not do that, as its all pretty much pure math that gets done

I agree that project euler is probably not the best way to learn C++. The main difficulty is going to be memory management, so make sure your program is large enough for you to actually have to manage something.

How about a small terminal based game? ncurses has a fairly reasonable C interface.

thanks, i'll try it out, do you have any other ideas that I could try as well?

I was thinking the same, like start with vending machine emulator and then expand into basic text adventure game, perhaps? :smiley:

after I download ncurses how would I go about adding it to a project to use?

What operating system are you on? Which build system are you using?

I'm on Win10 and using codeblocks

I've never worked with CodeBlocks before but generally speaking, you'll have to

  • Add ncurses' include directory to your project. This directory contains all headers you need to be able to use the library.
  • Add the ncurses binary to your linker. Without this your program will compile fine but you'll get a whole lot of linker errors because curses' symbols can't be found

ncurses is a text-based graphics library for C that is supported on unix-like OSes, not on Windows. So you can use it if you're writing C on a unix-like OS (such as Linux). Your choice of IDE doesn't matter.

On Windows, you could use it under a unix-like environment such as Cygwin or MSYS2, but you would hardly want to go to that length merely for the sake of writing ncurses programs.

There is a very similar library, PDCurses that is supported on Windows, and also a Project Pluto fork of PDCurses The first of those provides a binary distibution, but it dates from 2008. In both cases, there are links to GitHub repositories hosting the latest source code, from which you may build the library yourself, following the instructions you will find in the project's README.md file.

I think this could be helpful:


Some of them are pretty easy but some of them are much harder. Excercises are devided into categories so you can easy find what you are interested in. So you can get better in networking by creating FTP program, get better in file managment by creating Mp3 Tagger etc. You can also find link to solutions in various languages if you get stuck. These projects are fun and can learn you "real world problems".

On the other hand if you like to improve your algorithmic knowlage, thinking and language skills see suggestions from this thread:

1 Like

This is great, thanks.