![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
starmaster |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
Помогите, пожалуйста, решить вот такую задачу: Даны целые числа n и k. Найти младшую цифру числа n в степени k (число n в степени k может и не вмещаться в числовую переменную).
Сообщение отредактировано: starmaster - |
xds |
![]()
Сообщение
#2
|
![]() N337 ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 737 Пол: Мужской Репутация: ![]() ![]() ![]() |
Код program n_k; var n, k, r: Integer; begin Write('n>'); Readln(n); Write('k>'); Readln(k); r := 1; while k > 0 do begin r := LongInt(r) * n mod 10; Dec(k); end; Write('Младшая цифра: ', r); end. -------------------- The idiots are winning.
|
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
starmaster
Ну, для того, чтобы узнать только последнюю (младшую) цифру результата, не обязательно возводить в степень k все число n. Достаточно возвести "n mod 10" в степень k (то есть последнюю цифру n). Ну а дальше все просто: N^(Р*K) = (N^K)^Р, то есть достаточно показатель степени (К) разложить на простые множители, и каждый раз последнюю цифру результата возводить в требуемую степень... Пример: Найти последнюю цифру 4^24... 24 = 2*2*2*3 => 4^24 = (4^2)^2^2^3 4^2 = 16 ; берем последнюю цифру (6) 6^2 = 36 ; (6) 6^2 = 36 ; (6) 6^3 = 216; (6) то есть последняя цифра 4^24 должна быть равна 6... Проверяем: 4^24 = 281474976710656 Я думаю, проблем с реализацией не возникнет... ;) xds ![]() Сообщение отредактировано: volvo - |
starmaster |
![]()
Сообщение
#4
|
Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
Конечно спасибо большое! Предыдущее условие мне нужно было для задачки, которую я изложу ниже. Я и сам смогу решить, просто объясните, пожалуйста, условие:
Дано число N, в котором не менее 2 цифр. Найти разность числа, составленного из 2-х старших цифр и числа, составленного из 2-х младших цифр. Вход В первой строке входа дано число N (целое число) Выход В первую строку выхода вывести результат Пример Вход: 693 Выход: -24 |
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
starmaster
Объясните, пожалуйста 2 момента: 1. Неясно каким образом эта задача связана с вышеописанной. 2. (6 - 94) никак не равно (-24). Мало того, с этими цифрами вообще нельзя получить (-24) в любой перестановке. |
![]() ![]() |
![]() |
Текстовая версия | 1.09.2025 20:24 |