Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.04.2020, 20:32   #1
Пчелка
 
Регистрация: 10.03.2020
Сообщений: 5
По умолчанию Для делимости числа на 8 необходимо, чтобы число из 4

Для делимости числа на 8 неабходимо, чтобы число из 4 последних цифр делилось на 8. Написать функцию проверки делимости числа n, вводимого с клавиатуры, на 8. (Срочно, помогите, пожалуйста)
Пчелка вне форума Ответить с цитированием
Старый 14.04.2020, 09:10   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,716
По умолчанию

Язык - не важен? Тогда - можно на АЛГАМСе или PL-I?
digitalis вне форума Ответить с цитированием
Старый 14.04.2020, 15:20   #3
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,377
По умолчанию

Цитата:
Для делимости числа на 8 необходимо, чтобы число из 4 последних цифр делилось на 8.
Другая версия - в двоичном представлении числа младшие три бита должны быть нулями.
В Паскале, да и в других языках есть битовые операции или операцией сдвига вправо ...
А так, как поставлен вопрос:
1. Делим число на 10000 с получением остатка: Ost := N mod 10000
2. Делим остаток на 8 с получение остатка: Ost mod 8
3. Если результат ноль, то Да.
4. Если результат не ноль, то Нет.
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 14.04.2020, 16:43   #4
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Цитата:
Сообщение от ViktorR Посмотреть сообщение
А так, как поставлен вопрос:
Зачем делать лишнюю работу? ))
Код:
n = int(input("Введите четыре последние цифры числа: "))
Black Fregat вне форума Ответить с цитированием
Старый 14.04.2020, 17:17   #5
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Вот здесь тоже одной строкой порешали
I am not a wizard, I am just learning.
Desc вне форума Ответить с цитированием
Старый 14.04.2020, 22:35   #6
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,377
По умолчанию

По ссылке ищется сумма 4-х цифр числа и проверяется делимость этой суммы.
Это совсем не то.

PS: Во блин, для делимости на 8 достаточно делимости последних трёх, а не 4-х, цифр.
N = a*1000 + bcd, где а - любое число, а bcd - три последние цифры числа.
Т.к. 1000 / 8 = 125, то для делимости числа достаточно делимости на 8 части этого числа, состоящей из ТРЁХ последних цифр (bcd).
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужно это для того чтобы два минимальных числа выводило а не одно число в сортировке Sonya123456789 Помощь студентам 6 20.06.2018 15:14
[C++] Дано N - значное число и число K. Заданное число N нужно K-значным: либо удалить из числа N несколько первых цифр, либо в конце числа N добавить несколько нулей ClarkBrown Помощь студентам 1 10.12.2017 21:32
[Pascal] Как сделать чтобы можно было вводить 12 раз числа? А то только одно число ввел программа завершилась Gidus Помощь студентам 4 20.06.2017 13:44
Исправить код программы: Ввести с клавиатуры 8-разрядное двоичное число Х, установить младший бит этого числа так, чтобы количество единичных бит в двоичном числе Х стало четным Zhan1234 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 25.05.2017 12:41
Дано натуральное число n и действительные числа a1,…, an. Необходимо... anstsiya Общие вопросы C/C++ 9 02.07.2015 09:17