You can easily tell this by the fact that nobody does it unless forced to do so, and mostly not even then.
There is a long and very boring Wikipedia-page about versioning but let me sum it up for you without ever having read it. Your software should have a version number in a format like this:
major.minor.build.revision
Swap build and revision if you like, or disregard them altogether, but keep your major and minor versions consistent! However, there have never been a program that follows this scheme successfully over several versions during it's existence. Let me give some examples:
Windows 10 Version 1709 is version 10.0.16299.192. Windows 8 is version 6.
Java Development Kit 7 for Java 7 is not version 7 but 1.7.0.0.
Two different and incompatible ocx-files with the same name and version, from the last century but somehow still in use in some programs today. That is good work, mr McMahon, but you obviously hate versioning as much as everyone else!
Some of the many, many, many vc-redists required, it quickly becomes ridiculous. When you get an error and the Event viewer tells you that Microsoft.VC80.MFC is missing, you immediately know you need to install Microsoft Visual C++ 2005 Redistributable, don't you?
I think I got my point across.
Happy versioning!