Depende de cómo defina "Problema de programación".
En los proyectos del mundo real, la respuesta es definitivamente un NO claro. La mayoría de los problemas no son ni siquiera problemas técnicos, sino problemas de comunicación, requisitos que no están claros, etc.
Entonces tienes temas completos de clases de problemas que requieren casi ningún algoritmo. Por ejemplo, las GUI a menudo son sencillas de "programa", pero el problema real involucrado es tener un buen diseño (desde el punto de vista de la capacidad de uso, no solo la apariencia gráfica).
Hay algunos campos, donde los problemas tienden a ser mucho más algorítmicos por la naturaleza de ese campo. Por ejemplo, la IA es un tema principal, donde los algoritmos están en el núcleo. Los gráficos pueden ser de algoritmo intensivo, pero depende de lo que se entiende exactamente con "Programación de gráficos".
En general, si el problema que está resolviendo mediante programación es adecuado para una representación matemática, entonces está ingresando al área algorítmica. Por supuesto, esto es solo un indicador aproximado, ya que puede crear modelos matemáticos para casi todo. Pero para la mayoría de las cosas, normalmente no considerarías hacerlo.
Ejemplo final: si el problema es crear una GUI que permita ingresar datos para objetos comerciales, no pensarías mucho en las formulaciones matemáticas. Sin embargo, si el problema es crear una GUI que cambie dinámicamente y reubique elementos en función de algún valor de importancia, es mucho más probable que termine con un modelo matemático y una implementación algorítmica.