Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите составить программу : определить количество тысяч, сотен, десятков, единиц в четырёхзначном числе.

Владимир Знаток (263), закрыт 14 лет назад
Лучший ответ
Vlad Veselov Профи (632) 14 лет назад
когда просишь составить программу, желательно указывать язык программирования :)

есть такая операция - остаток от деления. именно с её помощью можно число разлагать на цифры.

например, число 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;
}
Остальные ответы
hello World Ученик (102) 1 год назад
у автора выше код немного неверен. Правильно будет так:
 int units,tens,hundreds,thousands; 
units = n % 10;
n = n / 10;
tens = n % 10;
n = n / 100;
hundreds = n % 10;
n = n / 1000;
thousands = n % 10;
Похожие вопросы