В составе существительного программа выделим корень и окончание.
В составе слова программа элемент про- очень похож на приставку. А так ли это?
Чтобы правильно определить границы корня слова программа, поступим традиционно:
подберем родственные слова и вычленим в них общую часть, в которой заключено основное лексическое значение.
Программа — программка, программный, программист, программировать.
Теперь стало очевидно, что в слове программа нет приставки и следует часть программ- выделить в качестве корня:
программ-а
корень/окончание
О правописании слова программа
В иноязычном по происхождению слове программа существует двойное написание согласного в корне. Согласно орфографическому правилу русского языка и в производных словах сохраняется это написание корня существительного программа:
программа — программка, программный, программист и пр.