Itu tergantung pada bagaimana Anda mendefinisikan "Masalah Pemrograman".
Dalam proyek dunia nyata, jawabannya jelas TIDAK. Sebagian besar masalah bahkan bukan masalah teknis, tetapi masalah komunikasi, persyaratan yang tidak jelas, dll.
Kemudian Anda memiliki seluruh mata pelajaran dari kelas masalah yang memerlukan hampir tanpa algoritma. Sebagai contoh, GUI sering langsung ke "program", tetapi masalah sebenarnya yang terlibat adalah memiliki desain yang baik (dari sudut pandang kegunaan, bukan hanya tampilan grafis).
Ada beberapa bidang, di mana masalahnya cenderung jauh lebih algoritmik oleh sifat bidang itu. Sebagai contoh, AI adalah subjek utama, di mana algoritma berada pada intinya. Grafik dapat berupa algoritma yang intensif, tetapi tergantung pada apa yang dimaksud dengan "Pemrograman Grafik".
Secara umum, jika masalah yang Anda selesaikan secara terprogram cocok untuk representasi matematis, maka Anda memasuki area algoritmik. Tentu saja, ini hanya indikator kasar, karena Anda dapat membuat model matematika untuk hampir semua hal. Tetapi untuk sebagian besar hal yang biasanya tidak Anda pertimbangkan untuk melakukannya.
Contoh terakhir: Jika masalahnya adalah membuat GUI yang memungkinkan memasukkan data untuk objek bisnis, Anda tidak akan terlalu memikirkan formulasi matematika. Namun, jika masalahnya adalah membuat GUI yang berubah secara dinamis dan merelokasi elemen berdasarkan beberapa nilai penting, Anda lebih mungkin berakhir dengan model matematika dan implementasi algoritmik.