Форум: "Прочее";
Текущий архив: 2014.06.15;
Скачать: [xml.tar.bz2];
ВнизПростенькая задачка Найти похожие ветки
← →
BoB (2013-11-28 14:35) [0]Найти целое N, такое, что :
N mod 2 = 1
N mod 3 = 1
N mod 4 = 1
N mod 5 = 1
N mod 6 = 1
N mod 7 = 0
Решается тупо, а об"яснить кроме как "патамушта" можно ?
← →
MBo © (2013-11-28 14:54) [1]Понятие о НОД и линейном диофантовом уравнении имеется?
← →
И. Павел © (2013-11-28 14:56) [2]Если N mod X = 1, то N = X * Y + 1. В итоге имеем систему уравнений.
Кстати, первые 2 условия лишние, они вытекают сами собой из N mod 6 = 1. Если от числа отнимать 6 и в итоге получим единицу, то очевидно, что если от числа отнимать 2 или 3, то в итоге получим тоже единицу.
← →
Плохиш © (2013-11-28 15:08) [3]2401 = 7*7*7*7
И это только первое :-)
> BoB (28.11.13 14:35)
Неужели принцип объяснять надо?
← →
И. Павел © (2013-11-28 15:15) [4]Еще можно искать решение таким образом:
если число делится на 4, 5 и 6 с остатком 1, то это может быть что-то типа (4*5*6 + 1) * X .
Но результат должен делиться на 7 без остатка: (4 * 5 * 6 + 1) * 7 * X = 0. В итоге постепенно меняем X и можно найти ответ: 697540921. Можно еще увеличивать X и найти еще решений. Часть решений скорее всего потеряются, но зато тут полностью понятна логика, в отличие от решения системы уравнений.
← →
Плохиш © (2013-11-28 15:19) [5]
> можно найти ответ: 697540921
Эк, куда тебя так сразу занесло :-))
← →
BoB (2013-11-28 15:20) [6]Вообще-то ответ : 2*3*4*5*6+1 = 721
> И. Павел © (28.11.13 14:56) [2]
Без первых 2х не получится
> MBo © (28.11.13 14:54) [1]
с НОД тоже вроде никак
а вот с "линейным диофантовым уравнением" - придется идти в школу %-(
← →
И. Павел © (2013-11-28 15:23) [7]> [4] И. Павел © (28.11.13 15:15)
Хотя нет, умножение на 7 сводит то что в скобках на нет...
> Неужели принцип объяснять надо?
ИМХО автор имел ввиду, что принцип понятен, но не понятен физический смысл. Т.е. что-то, что позволяло бы рещить задачу без итераций и систем уравнений.
← →
И. Павел © (2013-11-28 15:24) [8]> Вообще-то ответ : 2*3*4*5*6+1 = 721
Точнее это один из бесконечного множества ответов :)
← →
BoB (2013-11-28 15:29) [9]Наверное :-)
← →
[ВладОшин] © (2013-11-28 15:49) [10]цикл и не морочить голову :)
из первых 2к это:
301
721
1141
1561
1981
← →
Ega23 © (2013-11-28 16:00) [11]
> Вообще-то ответ : 2*3*4*5*6+1 = 721
Не учтено условие N mod 7 = 0
← →
Styx (2013-11-28 16:14) [12]
> Не учтено условие N mod 7 = 0
А что, он равен чему-то другому?
← →
Ega23 © (2013-11-28 16:17) [13]
> А что, он равен чему-то другому?
Не в этом дело. 301 тоже подходит.
← →
MBo © (2013-11-28 17:59) [14]эх, не НОД, а НОК - нанаименьшее общее кратное
НОК(2,3,4,5,6)=60
число дает остаток 1 при делении на 60, и делится без остатка на 7 - можно записать как
k * 60 + 1 = m * 7
Наименьшее неотрицательное решение (в данном случае проще подбором решать это диофантово уравнение, т.к. вариантов всего 7):
k = 5, т.е. искомое число 301
общее решение k=5+7*i (N = 301 + 420 * i)
← →
Rouse_ © (2013-11-28 21:08) [15]
> Простенькая задачка
>
> BoB (28.11.13 14:35)
> Найти целое N, такое, что :
Задачка для первокурсника :)
Вот такое интереснее (больше к программированию относится):function T(const Value: Integer): Boolean;
begin
Result := False;
if Value >= 0 then Exit;
if Value - 1 <= 0 then Exit;
Result := True;
end;
Задача вызвать функцию с параметром, с которым она вернет True
← →
Dimka Maslov © (2013-11-28 22:11) [16]
> Rouse_ © (28.11.13 21:08) [15]
Есть такое число, но без понимания, как хранятся числа такое не найти. А про это сейчас вообще рассказывают?
← →
[ВладОшин] © (2013-11-28 22:22) [17]аа.. OF :)
← →
Rouse_ © (2013-11-28 22:36) [18]
> Dimka Maslov © (28.11.13 22:11) [16]
>
> > Rouse_ © (28.11.13 21:08) [15]
>
>
> Есть такое число, но без понимания, как хранятся числа такое
> не найти. А про это сейчас вообще рассказывают?
Азы вроде как даже везде давали, но про сейчас - не знаю...
← →
[ВладОшин] © (2013-11-28 22:53) [19]кстати, если это -maxint, а иначе, вроде, никак, то не компилится что-то
← →
картман © (2013-11-28 22:57) [20]
> кстати, если это -maxint, а иначе, вроде, никак, то не компилится
> что-то
var
i: Integer;
begin
i := Low(Integer);
← →
Rouse__ (2013-11-29 00:09) [21]Вообще задачка тривиальная, семеро из десяти на нее отвечают правильно, но о причине такого поведения на моей памяти ответили только четыре человека (у нас в it отделе все про махнулись, даже Женька)...
← →
[ВладОшин] © (2013-11-29 00:32) [22]ну, правильно..
А зачем это помнить всегда? :)
Просто надо помнить, что в доп.коде (вроде, так) хранится инвертированно, и в разрядах может не уместится. Для выявления на асме флаг какой-то тестировали на лабах, вроде, OF. Но убей - не помню :)
Ни разу не надо было. Хотя, вру. Вот сейчас ты спрашиваешь :). Один раз понадобилось, значит :))
← →
BoB (2013-11-29 08:29) [23]> MBo © (28.11.13 17:59) [14]
общее решение k=5+7*i (N = 301 + 420 * i) - класс !
> Rouse_ © (28.11.13 21:08) [15]
> картман © (28.11.13 22:57) [20]
Low(integer)
а если в опциях включить OF Checking - то не проканает %-)
← →
Sha © (2013-11-29 09:56) [24]> BoB (29.11.13 08:29) [23]
напишиi:=-MaxInt; i:=i-1;
← →
BoB (2013-11-29 14:21) [25]> Sha © (29.11.13 09:56) [24]
i:=-MaxInt; i:=i-1;
Теперь
i = Low(Integer)
Что изменилось ?
← →
Inovet © (2013-11-29 14:42) [26]> [25] BoB (29.11.13 14:21)
> Что изменилось ?
Магия разная.
← →
Dimka Maslov © (2013-11-29 18:09) [27]
> [ВладОшин] © (28.11.13 22:53) [19]
$80000000
← →
Sha © (2013-11-30 11:01) [28]> BoB (29.11.13 14:21) [25]
> Что изменилось ?
ничего)
Сорри, это для [ВладОшин] [22] написал, посчитал, что оба поста твои.
> Просто надо помнить, что в доп.коде (вроде, так) хранится инвертированно,
> и в разрядах может не уместится.
1. доп. код <> инвертированно
2. инвертированное значение всегда умешается там же, где неинвертированное
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2014.06.15;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.007 c