когда просишь составить программу, желательно указывать язык программирования :)
есть такая операция - остаток от деления. именно с её помощью можно число разлагать на цифры.
например, число 47453818. остаток от деления на 10 - 8. значит, в числе 8 единиц. далее, отбрасываем последнюю цифру при помощи целочисленного деления на 10 - работаем с числом 4745381. остаток от деления на 10 - 1. значит, в числе 1 десяток. 474538 - в числе 8 сотен. 47453 - в числе 3 тысячи
в таком случае нам вообще фиолетово, сколько всего разрядов в числе. но, конечно, можно было бы просто прочитать четыре цифры и вывести результат.
в Паскале остаток от деления - Mod, целочисленное деление - Div, например units := n Mod 10; n := n Div 10;
привожу полный код на Си, если нужен другой язык или ещё какие нюансы возникнут - комментируй этот ответ.
#include <stdio.h>
int main() { int n; printf("Enter four-digit number "); scanf("%d",&n);
int units,tens,hundreds,thousands; units = n % 10; n = n / 10; tens = n % 10; n = n / 10; hundreds = n % 10; n = n / 10; thousands = n % 10;
printf("Provided number contains %d thousands, %d hundreds, %d tens and %d units\n",thousands,hundreds,tens,units); return 0; }