Гость
Статьи
Интересная задача на …

Интересная задача на делимость

Уважаемые форумчане! Предлагаю вам интересную задачу.

Найти наименьшее натуральное число, которое делится на 87 с остатком 24, и делится на 83 с остатком 33.
Хотите видеть больше постов от автора?
59 ответов
Последний — Перейти
Гость
#1
Тебе делать совсем нечего, да?
Гость
#2
Наименьшее натуральное число равно численному значению нашего года. )
Гость
#3
Гость
Наименьшее натуральное число равно численному значению нашего года. )
Знай наших !!!
;)
#4
Согласно КТО, 2025
#5
Naughty Raccoon 🦝
Согласно КТО, 2025
Верно!
#6
Гость
Наименьшее натуральное число равно численному значению нашего года. )
Прекрасно!
#7
Число с указанной делимостью запишем в виде
s=87x + 24, и s= 83x + 33.
Один из способов решения задачи -
найти множество всех целочисленных решений (x, y) уравнения
87x - 83y = 9.
Одним из решений этого уравнения является, например, (23, 24). Как его найти - отдельная тема.
Тогда множество всех целочисленных решений указанного уравнения
x = 23 + 83n,
y = 24 + 87n, где n - любое целое число.
Искомое число (точнее, множество чисел с указанной делимостью)
s = 87(23 + 83n) + 24 = 2025 + 7221n.
Наименьшее натуральное число с указанной делимостью получим, взяв n=0.
1234
#8
Теперь когда есть ИИ эта задача уже не такая сложная.
Гость
#9
7179
#10
Гость
7179
Пусть X искомое число.
a и b целые части при делении на указанные делители.
Уравнение для первой фразы
x /87 = a + 24/87
Уравнение для второй фразы
x /83 = b + 33/83

Далее упрощаем систему
x = 87*a + 24
x = 83*b + 33

Приравниваем правые части
87*a + 24 = 83*b + 33

b = (87*a - 9)/83

И погнали перебором
a = 1 b = ...
a = 2 b = ...
И так далее пока b не станет целым числом.
Это достигается при a = 23.
b становится равным 24.
Подставляя a или b в любое из исходных уравнений получаем искомое x = 2025
Гость
#11
Принцесса Эльза
Число с указанной делимостью запишем в виде
s=87x + 24, и s= 83x + 33.
Один из способов решения задачи -
найти множество всех целочисленных решений (x, y) уравнения
87x - 83y = 9.
Одним из решений этого уравнения является, например, (23, 24). Как его найти - отдельная тема.
Тогда множество всех целочисленных решений указанного уравнения
x = 23 + 83n,
y = 24 + 87n, где n - любое целое число.
Искомое число (точнее, множество чисел с указанной делимостью)
s = 87(23 + 83n) + 24 = 2025 + 7221n.
Наименьшее натуральное число с указанной делимостью получим, взяв n=0.
Ага, делать неχyй, делители искать.

javascript:let ч = 1; while (!(ч % 87 == 24 && ч % 83 == 33)) ч++; alert(ч);

2025 на экране.
Гость
#12
111 и 116
Гость
#13
если " с остатком" значит НЕ делится
я не поняла задачи, че за бред какое 2025?
Гость
#14
Значит. 87 клавиш и из них 2 октавы. Это типа Рояль, и Маленький Синтезатор. И второе. Рояль и маленько-средний синтезатор. Всё. Задачка решена.
#15
Гость
Ага, делать неχyй, делители искать.

javascript:let ч = 1; while (!(ч % 87 == 24 && ч % 83 == 33)) ч++; alert(ч);

2025 на экране.
Я так не умею:)
И таких методов не признаю.
#16
чАРМИн
Пусть X искомое число.
a и b целые части при делении на указанные делители.
Уравнение для первой фразы
x /87 = a + 24/87
Уравнение для второй фразы
x /83 = b + 33/83

Далее упрощаем систему
x = 87*a + 24
x = 83*b + 33

Приравниваем правые части
87*a + 24 = 83*b + 33

b = (87*a - 9)/83

И погнали перебором
a = 1 b = ...
a = 2 b = ...
И так далее пока b не станет целым числом.
Это достигается при a = 23.
b становится равным 24.
Подставляя a или b в любое из исходных уравнений получаем искомое x = 2025
Приветствую!
Уравнение 87a - 83b = 9 можно решить быстрее. Начать с уравнения 87a - 83b = 1. Его частное решение в целых числах можно найти при помощи алгоритма Евклида, или при помощи цепных дробей.
Гость
#17
Принцесса Эльза
Я так не умею:)
И таких методов не признаю.
Ну да, это численный подбор. Но прикол тут в том, что сегодня почти все реальные математические и инженерные задачи так решают, даже если в теории можно аналитическое решение вывести. Не потому, что люди отупели, а потому, что так быстрее и проще, с тем же результатом и минимумом вероятности ошибиться.
#18
Принцесса Эльза
Приветствую!
Уравнение 87a - 83b = 9 можно решить быстрее. Начать с уравнения 87a - 83b = 1. Его частное решение в целых числах можно найти при помощи алгоритма Евклида, или при помощи цепных дробей.
Здравствуйте )
Я просто привела пример одного из решений.
Я сама такие задачи люблю задавать, но там числа поменьше, поэтому решаются быстрее.
Принцесса Эльза, такая задача всегда имеет решение при любых числах ?
#19
Гость
Ну да, это численный подбор. Но прикол тут в том, что сегодня почти все реальные математические и инженерные задачи так решают, даже если в теории можно аналитическое решение вывести. Не потому, что люди отупели, а потому, что так быстрее и проще, с тем же результатом и минимумом вероятности ошибиться.
Если люди сами не хотят ничего делать - они тупеют.
Гость
#20
***, кто-нибудь снизойдет чтобы МНЕ объяснить?????
#21
Гость
Ага, делать неχyй, делители искать.

javascript:let ч = 1; while (!(ч % 87 == 24 && ч % 83 == 33)) ч++; alert(ч);

2025 на экране.
На каком языке это написано ?
Это же просто функция судя по всему.
Гость
#22
чАРМИн
Если люди сами не хотят ничего делать - они тупеют.
Своим егэшникам с квадратно-гнездовым подобием мышления расскажи это.
Гость
#23
😡😡😡😡
Гость
#24
Я раньше никогда не снились такие сны я знаю что это были не мои мысли я знаю что это не моё бессознательное подсознание я видела и чувствовала что это всё идёт от тебя что ты мне сказал пошли в постель
Гость
#25
чАРМИн
На каком языке это написано ?
Это же просто функция судя по всему.
Первое слово в строчке ни о чём не говорит? Этот код браузер может исполнять. Нет, не функция; просто цикл, который перебирает натуральные числа.
#26
Гость
Своим егэшникам с квадратно-гнездовым подобием мышления расскажи это.
Дедуль, мы с тобой встречались, я помню.
То что ты написа́л - это не решение.
Не смеши.
И в прошлый раз ты не сам решал задачу, которую я писа́ла. А я подумала, что ты сам ) божечки !! Какие же здесь вредные дядьки ходят.
#27
Гость
Первое слово в строчке ни о чём не говорит? Этот код браузер может исполнять. Нет, не функция; просто цикл, который перебирает натуральные числа.
Ну да, Ява. И я вижу что цикл у тебя по условию идёт. Но это не решение. То, что ты задал условие не значит, что ты решил. Комп решает, но не ты.
Чем ты похвастался, я не поняла.
#28
Гость
Своим егэшникам с квадратно-гнездовым подобием мышления расскажи это.
Не умничай.
Ты численные методы изучал ?
Горе-программист.
#29
Гость
***, кто-нибудь снизойдет чтобы МНЕ объяснить?????
Что вам объяснить ?
Программу третьего класса ?

Любое число делится на любое число. Можете даже проверить. Но только на ноль делить нельзя. Точнее, можно. Но вы получите бесконечностью по лбу.
Гость
#30
чАРМИн
Что вам объяснить ?
Программу третьего класса ?

Любое число делится на любое число. Можете даже проверить. Но только на ноль делить нельзя. Точнее, можно. Но вы получите бесконечностью по лбу.
я написала правильный ответ выше
и это далеко не 2025 а гораздо меньше
Гость
#31
чАРМИн
Дедуль, мы с тобой встречались, я помню.
То что ты написа́л - это не решение.
Не смеши.
И в прошлый раз ты не сам решал задачу, которую я писа́ла. А я подумала, что ты сам ) божечки !! Какие же здесь вредные дядьки ходят.
А кто? Орда егэшников в коллективном порыве?
Что не является решением? Шмат кода? Ну это как посмотреть. Суть решения в чём состоит? В том, чтобы получить ответ на поставленный вопрос, причём таким образом, чтобы ответ не мог быть подвергнут сомнению. Ответ получен? Да. Он может быть неверным? Нет. Ну вот и закрой хавальник.
#32
Гость
я написала правильный ответ выше
и это далеко не 2025 а гораздо меньше
Вы троллите что-ли ?
Что означают эти циферки ?
#33
Гость
А кто? Орда егэшников в коллективном порыве?
Что не является решением? Шмат кода? Ну это как посмотреть. Суть решения в чём состоит? В том, чтобы получить ответ на поставленный вопрос, причём таким образом, чтобы ответ не мог быть подвергнут сомнению. Ответ получен? Да. Он может быть неверным? Нет. Ну вот и закрой хавальник.
ч % 83 == 33
ч % 87 == 24

Это не функции что-ли ? Деление с остатком. Просто на разных языках по-разному пишется.
Что ты мне голову морочишь ?
Гость
#34
чАРМИн
Ну да, Ява. И я вижу что цикл у тебя по условию идёт. Но это не решение. То, что ты задал условие не значит, что ты решил. Комп решает, но не ты.
Чем ты похвастался, я не поняла.
JavaScript. Это алгоритмический язык браузеров. Ява - это про смартфоны. Комп - это инструмент, такой же, как способность мозга считать. С таким же успехом я мог бы в уме перебрать варианты. Но, поскольку скорость таких вычислений невысока, это глупо по сравнению с аналитическим решением. А вот применение компа - умно.
#35
Гость
111 и 116
Ни одно из этих чисел не удовлетворяет условию задачи
Гость
#36
чАРМИн
ч % 83 == 33
ч % 87 == 24

Это не функции что-ли ? Деление с остатком. Просто на разных языках по-разному пишется.
Что ты мне голову морочишь ?
Эти операции не оформлены как функции, ни в математической записи, ни в коде. Если бы я написал, например, Остаток(ч, 83) == 33, тогда да. Казалось бы, неважная формальность, но в контексте кода это не так: функция в коде - это объект, который можно передавать, присваивать, вызывать и т. п.
#37
Гость
JavaScript. Это алгоритмический язык браузеров. Ява - это про смартфоны. Комп - это инструмент, такой же, как способность мозга считать. С таким же успехом я мог бы в уме перебрать варианты. Но, поскольку скорость таких вычислений невысока, это глупо по сравнению с аналитическим решением. А вот применение компа - умно.
Да, перебирать долго.
Но прежде чем перебирать, ты должен был составить математическую модель задачи в виде системы уравнений. Затем преобразовать в вид, удобный для решения. Но там получается одно уравнение с двумя переменными. Такое уравнение имеет бесконечное множество решений. Но у нас есть ограничение. Минимальное натуральное число. Поэтому погнали перебор с цифры 1.
А у тебя всего этого нет. У тебя есть только компьютер и функции, предусмотренные в библиотеке этого языка. А если бы их там не было ? Всё, приехали.
#38
чАРМИн
Здравствуйте )
Я просто привела пример одного из решений.
Я сама такие задачи люблю задавать, но там числа поменьше, поэтому решаются быстрее.
Принцесса Эльза, такая задача всегда имеет решение при любых числах ?
Уравнение ax + by = c имеет решения (причём бесконечно много) в целых числах тогда и только тогда, когда с делится на наибольший общий делитель модулей целых коэффициентов a и b.
#39
Гость
Эти операции не оформлены как функции, ни в математической записи, ни в коде. Если бы я написал, например, Остаток(ч, 83) == 33, тогда да. Казалось бы, неважная формальность, но в контексте кода это не так: функция в коде - это объект, который можно передавать, присваивать, вызывать и т. п.
А что этот % означает ?
Гость
#40
чАРМИн
Да, перебирать долго.
Но прежде чем перебирать, ты должен был составить математическую модель задачи в виде системы уравнений. Затем преобразовать в вид, удобный для решения. Но там получается одно уравнение с двумя переменными. Такое уравнение имеет бесконечное множество решений. Но у нас есть ограничение. Минимальное натуральное число. Поэтому погнали перебор с цифры 1.
А у тебя всего этого нет. У тебя есть только компьютер и функции, предусмотренные в библиотеке этого языка. А если бы их там не было ? Всё, приехали.
Если там нету каких-то функций, они пишутся руками. Если язык полный по Тьюрингу, то с его помощью можно решить любую вычислимую алгоритмическую задачу. Да, я именно это и сделал: составил модель и преобразовал в удобный вид, результатом чего и является приведённый код. В уме, разумеется.
#41
Принцесса Эльза
Уравнение ax + by = c имеет решения (причём бесконечно много) в целых числах тогда и только тогда, когда с делится на наибольший общий делитель модулей целых коэффициентов a и b.
Возможно )
Просто сколько я ни составляла такие задачи, они все имели решение. А я цифры просто из головы брала любые.
Наверное просто так совпадало )
#42
Гость
Если там нету каких-то функций, они пишутся руками. Если язык полный по Тьюрингу, то с его помощью можно решить любую вычислимую алгоритмическую задачу. Да, я именно это и сделал: составил модель и преобразовал в удобный вид, результатом чего и является приведённый код. В уме, разумеется.
% что означает ?
Гость
#43
чАРМИн
А что этот % означает ?
Я тебе про то, что операция и функция в обсуждаемом контексте - не тождественные понятия. Но здесь, пожалуй, соглашусь с тобой: понятие функции как низкоуровневого алгоритма, реализующего математическую операцию, здесь можно применить.
#44
Гость
Я тебе про то, что операция и функция в обсуждаемом контексте - не тождественные понятия. Но здесь, пожалуй, соглашусь с тобой: понятие функции как низкоуровневого алгоритма, реализующего математическую операцию, здесь можно применить.
Вот !
Я таки права. Маленькая, но функция.
Одновременное выполнение друх функций в условии цикла.
#45
чАРМИн
Вот !
Я таки права. Маленькая, но функция.
Одновременное выполнение друх функций в условии цикла.
* двух
#46
Гость
Я тебе про то, что операция и функция в обсуждаемом контексте - не тождественные понятия. Но здесь, пожалуй, соглашусь с тобой: понятие функции как низкоуровневого алгоритма, реализующего математическую операцию, здесь можно применить.
Я под функцией имела ввиду те операции, которые заложены в библиотеку.
А вообще функция в программировании - это некий алгоритм, который пишешь сам, сколь угодно сложный. Описываешь его отдельно. Нюанс - результатом работы функции является единственное значение, которое можно присваивать любой переменой, как ты пишешь - передавать. Функция нужна для того чтобы производить одни и те же действия с разными параметрами.

Тут аналогия понятия с алгеброй.
А алгебре функция - зависимость переменной Y от переменной X , когда каждому значению аргумента соответствует единственное значение функции.
#47
Принцесса Эльза
Уравнение ax + by = c имеет решения (причём бесконечно много) в целых числах тогда и только тогда, когда с делится на наибольший общий делитель модулей целых коэффициентов a и b.
Получается, вывод такой можно сделать.
Если брать в качестве делителей простые числа, задача всегда будет иметь решение, так как C - целое число, а общий делитель коэффициентов равен единице. Так ?
Гость
#48
чАРМИн
Я под функцией имела ввиду те операции, которые заложены в библиотеку.
А вообще функция в программировании - это некий алгоритм, который пишешь сам, сколь угодно сложный. Описываешь его отдельно. Нюанс - результатом работы функции является единственное значение, которое можно присваивать любой переменой, как ты пишешь - передавать. Функция нужна для того чтобы производить одни и те же действия с разными параметрами.

Тут аналогия понятия с алгеброй.
А алгебре функция - зависимость переменной Y от переменной X , когда каждому значению аргумента соответствует единственное значение функции.
> Я под функцией имела ввиду те операции, которые заложены в библиотеку.
Да, так можно сказать.

> А вообще функция в программировании - это некий алгоритм, который пишешь сам, сколь угодно сложный.
Да, но в кодоeбле весьма много парадигм, и понятие функции может существенно различаться от одной к другой: от простого подмодуля до фундаментального логического кирпичика всего кода. Что касается JS, о котором мы говорили, и схожих языков, то ф-я здесь - это прежде всего объект. То есть с нею можно обращаться как с данными, например:

Функция Квадрат(x) { Вернуть x * x; }
Функция Изменить_число(ч, ф) { Вернуть ф(ч); }
Изменить_число(10, Квадрат); // Вызов - вернёт 100.

С точки зрения математики - ничего интересного, просто отображение функции в число. В физической памяти ф-я - это просто адрес, по которому исполнитель языка при её вызове находит набор инструкций, устанавливает входные параметры, исполняет этот набор и возвращается обратно со значением, полученным из инструкции "Вернуть". Но объект - это не только данные/инструкции. У него есть тип/класс, место в иерархии объектов, контекст исполнения, внутренние атрибуты и т. д., в зависимости от ЯП.

Как можешь видеть, в таком рассмотрении ф-я имеет мало общего с операцией, которая чуть ли не напрямую исполняется процессором (типа арифметики).

> А алгебре функция - зависимость переменной Y от переменной X , когда каждому значению аргумента соответствует единственное значение функции.
В кодоeбле математическая ф-я соответствует т. н. "чистым" ф-ям - на которые никак не влияет внешнее окружение (как и они на него) и которые на один набор параметров всегда возвращают одно и то же значение. Но на практике этого даже в функциональных ЯП сложно достичь. Но зато самые базовые операции процессора, за исключением работающих с памятью, если рассматривать его регистры как параметры, вполне подходят под определение функций (остаток в том числе).
Гость
#49
чАРМИн
Вот !
Я таки права. Маленькая, но функция.
Одновременное выполнение друх функций в условии цикла.
> Одновременное выполнение друх функций в условии цикла.

И всё же в условии "!(ч % 87 == 24 && ч % 83 == 33)" в таком рассмотрении не две функции. Если разложить на элементарные операции, то получим:

Прочитать: ч -> П0
Остаток: П0, 87 -> П1
Сравнение: П1, 24 -> П1
Остаток: П0, 83 -> П2
Сравнение: П2, 33 -> П2
Логич. И: П1, П2 -> П0
Логич. отр.: П0 -> П0
#50
чАРМИн
Получается, вывод такой можно сделать.
Если брать в качестве делителей простые числа, задача всегда будет иметь решение, так как C - целое число, а общий делитель коэффициентов равен единице. Так ?
Да, так. Но уточню - взаимно простые числа. Например, 93 и 97.
Формулируем задачу (например):
s = 93x + 9,
s= 97y + 4
Терерь надо решить уравнение 93x - 97y = - 5 в целых числах.
Сначала решим уравнение 93x - 97y = 1 методом Евклида.
Обозначим a = 93, b=97. Алгоритм Евклида таков:
b = a*1 + 4,
a = 4*23 + 1
4 = 1*4 (т.е.4 уже делится на предыдущий остаток нацело).
Последний ненулевой остаток 1 равен НОД{a, b}.
Из первых двух равенств очевидно, что 4 = b - a, 1=a - 23(b - a),
Т.е 24a - 23b = 1.
Отсюда видим, что одним из решений уравнения 93x - 97y= 1 является пара (24, 23).
Тогда, умножая координаты решения на (-5), получим одно из решений уравнения 93x - 97y = -5.
(-120, -115).
Общее множество решений последнего уравнения в целых числах
(- 120 + 97n, -115 + 93n).
Тогда s = 93x + 9 = - 11151 + 9021n, (n - любое целое число).
Взяв n=2, получим 6891, т.е. наименьшее натуральное число, делящиеся на 93 с остатком 9, и на 97 с остатком 4.
Игра «Ромашка»
Ромашка
0

Найденные слова