What are the advantages of compiling a program?

So it can be run.

Answering from an alternative angle, compiling source code into an executable program creates a list of instructions that can be understood directly by the CPU of the computer without any extra tools.

The alternative being a script is a program which has to be read and interpreted by another program. This causes a major decrease in performance as the CPU had to run a program that will read the script character by character and perform a lot of lookup functions to perform the same tasks.

The in-between option is using a virtual machine language which produces a sort-of half compiled program. This is similar to LLVM, Java or the .NET CLR. All three options allow a program to be made smaller, can be run byte for byte or by an interpreter or can compile the code on the machine where it will be run. This is the ideal solution as the code can be compiled to run optimally on the end user's machine instead of trying to optimize code for all possible systems.