Число с указанной делимостью запишем в виде 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
[619436856]
#8
Теперь когда есть ИИ эта задача уже не такая сложная.
Пусть 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
Гость
[1501664178]
#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.
Пусть 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. Его частное решение в целых числах можно найти при помощи алгоритма Евклида, или при помощи цепных дробей.
Гость
[1501664178]
#17
Принцесса Эльза
Я так не умею:) И таких методов не признаю.
Ну да, это численный подбор. Но прикол тут в том, что сегодня почти все реальные математические и инженерные задачи так решают, даже если в теории можно аналитическое решение вывести. Не потому, что люди отупели, а потому, что так быстрее и проще, с тем же результатом и минимумом вероятности ошибиться.
Приветствую! Уравнение 87a - 83b = 9 можно решить быстрее. Начать с уравнения 87a - 83b = 1. Его частное решение в целых числах можно найти при помощи алгоритма Евклида, или при помощи цепных дробей.
Здравствуйте ) Я просто привела пример одного из решений. Я сама такие задачи люблю задавать, но там числа поменьше, поэтому решаются быстрее. Принцесса Эльза, такая задача всегда имеет решение при любых числах ?
Ну да, это численный подбор. Но прикол тут в том, что сегодня почти все реальные математические и инженерные задачи так решают, даже если в теории можно аналитическое решение вывести. Не потому, что люди отупели, а потому, что так быстрее и проще, с тем же результатом и минимумом вероятности ошибиться.
Если люди сами не хотят ничего делать - они тупеют.
Гость
[2764765456]
#20
***, кто-нибудь снизойдет чтобы МНЕ объяснить?????
Я раньше никогда не снились такие сны я знаю что это были не мои мысли я знаю что это не моё бессознательное подсознание я видела и чувствовала что это всё идёт от тебя что ты мне сказал пошли в постель
Гость
[1501664178]
#25
чАРМИн
На каком языке это написано ? Это же просто функция судя по всему.
Первое слово в строчке ни о чём не говорит? Этот код браузер может исполнять. Нет, не функция; просто цикл, который перебирает натуральные числа.
Своим егэшникам с квадратно-гнездовым подобием мышления расскажи это.
Дедуль, мы с тобой встречались, я помню. То что ты написа́л - это не решение. Не смеши. И в прошлый раз ты не сам решал задачу, которую я писа́ла. А я подумала, что ты сам ) божечки !! Какие же здесь вредные дядьки ходят.
Первое слово в строчке ни о чём не говорит? Этот код браузер может исполнять. Нет, не функция; просто цикл, который перебирает натуральные числа.
Ну да, Ява. И я вижу что цикл у тебя по условию идёт. Но это не решение. То, что ты задал условие не значит, что ты решил. Комп решает, но не ты. Чем ты похвастался, я не поняла.
***, кто-нибудь снизойдет чтобы МНЕ объяснить?????
Что вам объяснить ? Программу третьего класса ?
Любое число делится на любое число. Можете даже проверить. Но только на ноль делить нельзя. Точнее, можно. Но вы получите бесконечностью по лбу.
Гость
[2764765456]
#30
чАРМИн
Что вам объяснить ? Программу третьего класса ?
Любое число делится на любое число. Можете даже проверить. Но только на ноль делить нельзя. Точнее, можно. Но вы получите бесконечностью по лбу.
я написала правильный ответ выше и это далеко не 2025 а гораздо меньше
Гость
[1501664178]
#31
чАРМИн
Дедуль, мы с тобой встречались, я помню. То что ты написа́л - это не решение. Не смеши. И в прошлый раз ты не сам решал задачу, которую я писа́ла. А я подумала, что ты сам ) божечки !! Какие же здесь вредные дядьки ходят.
А кто? Орда егэшников в коллективном порыве? Что не является решением? Шмат кода? Ну это как посмотреть. Суть решения в чём состоит? В том, чтобы получить ответ на поставленный вопрос, причём таким образом, чтобы ответ не мог быть подвергнут сомнению. Ответ получен? Да. Он может быть неверным? Нет. Ну вот и закрой хавальник.
А кто? Орда егэшников в коллективном порыве? Что не является решением? Шмат кода? Ну это как посмотреть. Суть решения в чём состоит? В том, чтобы получить ответ на поставленный вопрос, причём таким образом, чтобы ответ не мог быть подвергнут сомнению. Ответ получен? Да. Он может быть неверным? Нет. Ну вот и закрой хавальник.
ч % 83 == 33 ч % 87 == 24
Это не функции что-ли ? Деление с остатком. Просто на разных языках по-разному пишется. Что ты мне голову морочишь ?
Гость
[1501664178]
#34
чАРМИн
Ну да, Ява. И я вижу что цикл у тебя по условию идёт. Но это не решение. То, что ты задал условие не значит, что ты решил. Комп решает, но не ты. Чем ты похвастался, я не поняла.
JavaScript. Это алгоритмический язык браузеров. Ява - это про смартфоны. Комп - это инструмент, такой же, как способность мозга считать. С таким же успехом я мог бы в уме перебрать варианты. Но, поскольку скорость таких вычислений невысока, это глупо по сравнению с аналитическим решением. А вот применение компа - умно.
Ни одно из этих чисел не удовлетворяет условию задачи
Гость
[1501664178]
#36
чАРМИн
ч % 83 == 33 ч % 87 == 24
Это не функции что-ли ? Деление с остатком. Просто на разных языках по-разному пишется. Что ты мне голову морочишь ?
Эти операции не оформлены как функции, ни в математической записи, ни в коде. Если бы я написал, например, Остаток(ч, 83) == 33, тогда да. Казалось бы, неважная формальность, но в контексте кода это не так: функция в коде - это объект, который можно передавать, присваивать, вызывать и т. п.
JavaScript. Это алгоритмический язык браузеров. Ява - это про смартфоны. Комп - это инструмент, такой же, как способность мозга считать. С таким же успехом я мог бы в уме перебрать варианты. Но, поскольку скорость таких вычислений невысока, это глупо по сравнению с аналитическим решением. А вот применение компа - умно.
Да, перебирать долго. Но прежде чем перебирать, ты должен был составить математическую модель задачи в виде системы уравнений. Затем преобразовать в вид, удобный для решения. Но там получается одно уравнение с двумя переменными. Такое уравнение имеет бесконечное множество решений. Но у нас есть ограничение. Минимальное натуральное число. Поэтому погнали перебор с цифры 1. А у тебя всего этого нет. У тебя есть только компьютер и функции, предусмотренные в библиотеке этого языка. А если бы их там не было ? Всё, приехали.
Здравствуйте ) Я просто привела пример одного из решений. Я сама такие задачи люблю задавать, но там числа поменьше, поэтому решаются быстрее. Принцесса Эльза, такая задача всегда имеет решение при любых числах ?
Уравнение ax + by = c имеет решения (причём бесконечно много) в целых числах тогда и только тогда, когда с делится на наибольший общий делитель модулей целых коэффициентов a и b.
Эти операции не оформлены как функции, ни в математической записи, ни в коде. Если бы я написал, например, Остаток(ч, 83) == 33, тогда да. Казалось бы, неважная формальность, но в контексте кода это не так: функция в коде - это объект, который можно передавать, присваивать, вызывать и т. п.
А что этот % означает ?
Гость
[1501664178]
#40
чАРМИн
Да, перебирать долго. Но прежде чем перебирать, ты должен был составить математическую модель задачи в виде системы уравнений. Затем преобразовать в вид, удобный для решения. Но там получается одно уравнение с двумя переменными. Такое уравнение имеет бесконечное множество решений. Но у нас есть ограничение. Минимальное натуральное число. Поэтому погнали перебор с цифры 1. А у тебя всего этого нет. У тебя есть только компьютер и функции, предусмотренные в библиотеке этого языка. А если бы их там не было ? Всё, приехали.
Если там нету каких-то функций, они пишутся руками. Если язык полный по Тьюрингу, то с его помощью можно решить любую вычислимую алгоритмическую задачу. Да, я именно это и сделал: составил модель и преобразовал в удобный вид, результатом чего и является приведённый код. В уме, разумеется.
Уравнение ax + by = c имеет решения (причём бесконечно много) в целых числах тогда и только тогда, когда с делится на наибольший общий делитель модулей целых коэффициентов a и b.
Возможно ) Просто сколько я ни составляла такие задачи, они все имели решение. А я цифры просто из головы брала любые. Наверное просто так совпадало )
Если там нету каких-то функций, они пишутся руками. Если язык полный по Тьюрингу, то с его помощью можно решить любую вычислимую алгоритмическую задачу. Да, я именно это и сделал: составил модель и преобразовал в удобный вид, результатом чего и является приведённый код. В уме, разумеется.
% что означает ?
Гость
[1501664178]
#43
чАРМИн
А что этот % означает ?
Я тебе про то, что операция и функция в обсуждаемом контексте - не тождественные понятия. Но здесь, пожалуй, соглашусь с тобой: понятие функции как низкоуровневого алгоритма, реализующего математическую операцию, здесь можно применить.
Я тебе про то, что операция и функция в обсуждаемом контексте - не тождественные понятия. Но здесь, пожалуй, соглашусь с тобой: понятие функции как низкоуровневого алгоритма, реализующего математическую операцию, здесь можно применить.
Вот ! Я таки права. Маленькая, но функция. Одновременное выполнение друх функций в условии цикла.
Я тебе про то, что операция и функция в обсуждаемом контексте - не тождественные понятия. Но здесь, пожалуй, соглашусь с тобой: понятие функции как низкоуровневого алгоритма, реализующего математическую операцию, здесь можно применить.
Я под функцией имела ввиду те операции, которые заложены в библиотеку. А вообще функция в программировании - это некий алгоритм, который пишешь сам, сколь угодно сложный. Описываешь его отдельно. Нюанс - результатом работы функции является единственное значение, которое можно присваивать любой переменой, как ты пишешь - передавать. Функция нужна для того чтобы производить одни и те же действия с разными параметрами.
Тут аналогия понятия с алгеброй. А алгебре функция - зависимость переменной Y от переменной X , когда каждому значению аргумента соответствует единственное значение функции.
Уравнение ax + by = c имеет решения (причём бесконечно много) в целых числах тогда и только тогда, когда с делится на наибольший общий делитель модулей целых коэффициентов a и b.
Получается, вывод такой можно сделать. Если брать в качестве делителей простые числа, задача всегда будет иметь решение, так как C - целое число, а общий делитель коэффициентов равен единице. Так ?
Гость
[1501664178]
#48
чАРМИн
Я под функцией имела ввиду те операции, которые заложены в библиотеку. А вообще функция в программировании - это некий алгоритм, который пишешь сам, сколь угодно сложный. Описываешь его отдельно. Нюанс - результатом работы функции является единственное значение, которое можно присваивать любой переменой, как ты пишешь - передавать. Функция нужна для того чтобы производить одни и те же действия с разными параметрами.
Тут аналогия понятия с алгеброй. А алгебре функция - зависимость переменной Y от переменной X , когда каждому значению аргумента соответствует единственное значение функции.
> Я под функцией имела ввиду те операции, которые заложены в библиотеку. Да, так можно сказать.
> А вообще функция в программировании - это некий алгоритм, который пишешь сам, сколь угодно сложный. Да, но в кодоeбле весьма много парадигм, и понятие функции может существенно различаться от одной к другой: от простого подмодуля до фундаментального логического кирпичика всего кода. Что касается JS, о котором мы говорили, и схожих языков, то ф-я здесь - это прежде всего объект. То есть с нею можно обращаться как с данными, например:
Функция Квадрат(x) { Вернуть x * x; } Функция Изменить_число(ч, ф) { Вернуть ф(ч); } Изменить_число(10, Квадрат); // Вызов - вернёт 100.
С точки зрения математики - ничего интересного, просто отображение функции в число. В физической памяти ф-я - это просто адрес, по которому исполнитель языка при её вызове находит набор инструкций, устанавливает входные параметры, исполняет этот набор и возвращается обратно со значением, полученным из инструкции "Вернуть". Но объект - это не только данные/инструкции. У него есть тип/класс, место в иерархии объектов, контекст исполнения, внутренние атрибуты и т. д., в зависимости от ЯП.
Как можешь видеть, в таком рассмотрении ф-я имеет мало общего с операцией, которая чуть ли не напрямую исполняется процессором (типа арифметики).
> А алгебре функция - зависимость переменной Y от переменной X , когда каждому значению аргумента соответствует единственное значение функции. В кодоeбле математическая ф-я соответствует т. н. "чистым" ф-ям - на которые никак не влияет внешнее окружение (как и они на него) и которые на один набор параметров всегда возвращают одно и то же значение. Но на практике этого даже в функциональных ЯП сложно достичь. Но зато самые базовые операции процессора, за исключением работающих с памятью, если рассматривать его регистры как параметры, вполне подходят под определение функций (остаток в том числе).
Гость
[1501664178]
#49
чАРМИн
Вот ! Я таки права. Маленькая, но функция. Одновременное выполнение друх функций в условии цикла.
> Одновременное выполнение друх функций в условии цикла.
И всё же в условии "!(ч % 87 == 24 && ч % 83 == 33)" в таком рассмотрении не две функции. Если разложить на элементарные операции, то получим:
Получается, вывод такой можно сделать. Если брать в качестве делителей простые числа, задача всегда будет иметь решение, так как 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.
Найти наименьшее натуральное число, которое делится на 87 с остатком 24, и делится на 83 с остатком 33.