Получить сумму m последних цифр числа n - Pascal ABC (14750)
Формулировка задачи:
Здравствуйте, нужна помощь в пару задачах по программированию на Pascal. Нужно написать две программы которые будут выполнять условия ниже. Если есть не равнодушные не проходите мимо помогите в данном вопросе.
Задача 1
Даны натуральные числа n, m. Получить сумму m послед-
них цифр числа n. Число n вводить как величину типа
integer, и строки не использовать.
Пример. Пусть n = 12345, m = 3, тогда ответ равен 3 + 4 + 5 = 12.
Подсказка. Как получать цифры целого числа, см. учебное
пособие В.М. Зюзькова «Программирование», раздел 3.5.
Задача 2
Для каждой цифры '0', '1', ... , '9' подсчитать количество
вхождений в данную строку S.
Решение задачи: «Получить сумму m последних цифр числа n»
textual
Листинг программы
program z1; var n, m, ans, nmb : integer; begin readln(n, m); ans := 0; while(m <> 0) do begin nmb := n mod 10; n := n div 10; ans := ans + nmb; dec(m); end; writeln(ans); end.
Объяснение кода листинга программы
В данном коде на языке Pascal ABC задан алгоритм для получения суммы последних m цифр числа n.
- В начале программы объявляются переменные n, m и ans типа integer.
- Затем происходит чтение значений переменных n и m с помощью функции readln.
- Переменная ans инициализируется нулем.
- Далее идет цикл while, который выполняется до тех пор, пока значение переменной m не станет равным нулю.
- В каждой итерации цикла значение переменной n делится на 10 (для получения последней цифры числа), а остаток от деления сохраняется в переменной nmb.
- Затем значение переменной n обновляется, путем деления на 10, и переменной m уменьшается на единицу.
- После окончания цикла, значение переменной ans увеличивается на сумму всех цифр, полученных в предыдущих итерациях.
- Наконец, значение переменной ans выводится на экран с помощью функции writeln. Таким образом, данный код позволяет получить сумму последних m цифр числа n.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д