Обратите внимание на то, что в данном случае мы не можем сократить это до:
if(!i){
...
Serial.print(i);
...
}
i=i-1;
Так как декремент должен производиться в обоих вариантах условия, но строго до исполнения блока true, так как в ином случае Serial.print(i) покажет неверное значение.
Я не знаю, что там у кого подразумевается и зачем начинать опять водить поляков по лесу.
Конструкции неравнозначны, это единственное, что я хочу проиллюстрировать. А что там логически более правильно в разрезе алгоритма - не является предметом обсуждения эквивалентных аналогов выражения if(!i--).
Обратите внимание на то, что в данном случае мы не можем сократить это до:
if(!i){
...
Serial.print(i);
...
}
i=i-1;
Так как декремент должен производиться в обоих вариантах условия, но строго до исполнения блока true, так как в ином случае Serial.print(i) покажет неверное значение.
Тогда внутри блок if() придется утыкать (i-1) , в местах, где оперируют переменной i.
Я сам не особо люблю эти ++/-- в составе других операторов, потому как легко запутаться, но в (!i--) он смотрится изящно. Надо посмотреть, как оно на выходе в ассемблер трансформируется и так же ли там красиво стоит.
Да, и первое приведённое решение имеет сильное ограничение по частоте вызова функции, лучше так ))):
Если уж говорить и частоте, то зачем Вы пихаете RISING в прерывание? CHANGE сразу дало бы возможность вдвое уменьшить нижний предел частоты безо всякий фокусов с дополнительными счётчиками.
ua6em пишет:
Что-то новых задач для новичков не наблюдается ...
А что, кто-то обещал? :) Эта задача появилась из занятий с внуком. Когда и если что-нить забавное ещё появится, выложу.
Кстати, о ребёнке. Он тут намылился поступать в ЗФТШ (кто не знает, - это заочная школа при Физтехе). Посмотрел я на его задачи и прибалдел. То ли, с тех пор как я там учился, задачи сильно просели в сложности, то ли я как-то изменился, но меня поразила лёгкость вступительных задач.
Вот, например, одна задачка. Моему ребёнку её не нужно было, решать - она от восьмого класса, а он в седьмом, но он едва прочитав её, решил устно, чем вызвал ахрененный прилив гордости у деда :-)) Задача №7 по физике - стр.10 в самом низу.
Вот, например, одна задачка. Моему ребёнку её не нужно было, решать - она от восьмого класса, а он в седьмом, но он едва прочитав её, решил устно, чем вызвал ахрененный прилив гордости у деда :-)) Задача №7 по физике - стр.10 в самом низу.
Мне от Касперыча задача понравилась (может потому, что решил её влёт, за пару секунд, в уме и не привлекая Гаусса)...
есть запись чисел в строке...1234567891011..20182019
Делится ли сумма всех чисел без остатка на 9...
То-есть 1+2+3..+9+1+0+1+1...+2+0+1+9
)))
PS особо не искал, но сходу не нашёл ограничения по частоте на функцию tone() а знать хотелось бы, tone(1) точно не работает )))
PPS меня внучки радуют пока только словарным запасом )))
[Вот, например, одна задачка. Моему ребёнку её не нужно было, решать - она от восьмого класса, а он в седьмом, но он едва прочитав её, решил устно, чем вызвал ахрененный прилив гордости у деда :-)) Задача №7 по физике - стр.10 в самом низу.
я тоже решил устно :) и это. прямо скажем, показатель :)
PPS Вы задачку от Касперского решили, устно? Нет - тоже удивите )))
Вы меня извините, но после истории с виртуалкой на 9MHz я Ваших словах логики не ищу. Зачем терять время на бессмыслицу?
Позавчера созерцали с приятелем ЛУНУ, облака на высоте 5 километров проплывали за ней, наверное тоже логики нет, до облаков 7 километров, до Луны 380тыщ, ни какой логики... )))
да лан, я вот сейчас на работе сижу, мозги свободны :) - посчитал в уме - сумма всех цмифр чисел от 0 до 2019 = 28140 - на 9 неделится :)
Как говаривал Евгений Петрович - а на хрена??? Да и за две секунды ...сильно сомневаюсь...здесь надо вспомнить арифметику 4 класса )))
всякие признаки деления использовать - это читерство :). Счет полной суммы занял минуты полторы... я не слишком быстр мозгами. Больше всего промучился с числами от 2000 до 2019 :)
Дим, да там, поди для сложения/оценки, какие-нить заученные приемчики должны быть применены (как в истории про бочку) - люди-то одинаковые везде. Найдут, что понимают лучше и давай тиранить окружающих.
Дим, да там, поди для сложения/оценки, какие-нить заученные приемчики должны быть применены (как в истории про бочку) - люди-то одинаковые везде. Найдут, что понимают лучше и давай тиранить окружающих.
Да какие приемнички, я же сказал, всё в 4 классе преподавали, в нашей, церковно-приходской )))
1. Если один из сомножителей делится на цело, без остатка, то и произведение двух чисел делится без остатка
2. Имеем сомножители 1+ 2 0 1 9 = 1+2+0+1+9 = 13 нацело не делится (2 + 2 0 1 8) = 13...
3. Таких пар 1009 - нацело не делится )))
Давайте теперь размышлять логически: у вас был учитель, который знал это правило и решил его объяснить ученикам. В другой школе учитель не знал этого правила или посчитал ненужным донести его до учеников. Виноват ли в этом ученик, который не узнал данное правило? Справедливо ли утверждение о том, что не будь у вас учителя, который хотел и вдолбил в головы учеников данный приём, вы бы выглядели так же глупо на фоне остальных?
Да какие приемнички, я же сказал, всё в 4 классе преподавали, в нашей, церковно-приходской )))
1. Если один из сомножителей делится на цело, без остатка, то и произведение двух чисел делится без остатка
2. Имеем сомножители 1+ 2 0 1 9 = 1+2+0+1+9 = 13 нацело не делится (2 + 2 0 1 8) = 13...
3. Таких пар 1009 - нацело не делится )))
глупость написана - и доказать очень легко.
Из того, что (1+ 2 0 1 9) = 13 и (2 + 2 0 1 8) = 13 вовсе не следует, что сумма цифр любой пары из 1009 - тоже 13. Возьми число 999 - в нем одном сумма цифо УЖЕ 27...
Давайте теперь размышлять логически: у вас был учитель, который знал это правило и решил его объяснить ученикам. В другой школе учитель не знал этого правила или посчитал ненужным донести его до учеников.
да нет тут никакого правила. Ошибка логики - вот и вся "ценность" этого решения "за пару секунд в уме"
Давайте теперь размышлять логически: у вас был учитель, который знал это правило и решил его объяснить ученикам. В другой школе учитель не знал этого правила или посчитал ненужным донести его до учеников.
да нет тут никакого правила. Ошибка логики - вот и вся "ценность" этого решения "за пару секунд в уме"
Честно говоря - я не пересчитывал, потому что после определенного количества факапов я перестаю вникать в то, что пишет человек. Однако, он утверждает, что данное правило должны знать все (как и с пресловутой бочкой), в связи с чем я привожу пример экзистенциальной (благодарю ЕвгенияП за напоминание о понятии) природы знаний индивидуума и крайней субъективности их оценки.
очень полезное свойство - уметь хотя бы примерно прикидывать порядок результата
Среднее число цифр в таких парах - порядка 6. Среднее значение цифры(от 0 до 9) - 4.5. При таком раскладе ну никак не может средняя сумма 6 цифр со средним 4.5 иметь значение 13 :)
Еще немного подумал, пока домой ехал - мозги опять свободны :)
Правило такое и правда есть. Только у него четкие границы применения, о которых наш друг ua6em забыл. Как говорили в моей "церковно-приходской" - "слышал звон, да не знает где он".
Правило подсчет сумм цифр в ряду парами работает при двух условиях:
- первая цифра ряда должна быть 0 (на сумму цифр ряда - начинать с 0 или 1 - конечно не влияет, но вот сумма цифр в паре - меняется)
- ряд должен заканчиваться числом, у которого во всех разрядах, кроме старшего - стоят девятки
То есть для ряда от 0 до 9 - правило работает, (0 +9) + (1+8) + (2+7) .... = 45
А вот от 0 до 11 - нет :)
Так же правило работает для 0-29, 0-99 или 0-3999.
Но вполне ожидаемо лажает для ряда 0-2019, я уж не говорю про ряд 1-2019 :)
Кстати, вполне возможно, что в той одиозной задачке про бочку имеем что-то подобное - товарищ когда-то знал правильное красивое решение, но условия давно стерлись из памяти, а логические допуски перепутались :)
Кстати, вполне возможно, что в той одиозной задачке про бочку имеем что-то подобное - товарищ когда-то знал правильное красивое решение, но условия давно стерлись из памяти, а логические допуски перепутались :)
Вот я лажанулся...почти...ответ то правильный...правда над задачей точно не думал )))
А про бочку Пух выдал правильное решение, только плюс с минусом перепутал, квадрат
гипотенузы (радиус) равен сумме квадратов катетов (радиус минус приращение в мм),
найти площадь прямоугольника далее какие сложности, естественно все площади потом суммируются
PS у Касперского как одно из решений разбивать на пары делящиеся без остатка на 9
А что поделать, если у старожилов данного ресурса снобизм и чувство собственного превосходства лезут со всех щелей, ну и как говорил по моему Бисмарк, "если не можешь уничтожить - возглавь"!!!
ЗЫ не вивисекция, меру взаимодействия, описанную в трудах Литвака не переходил )))
Ну, если рассуждать логически, то конструкция if (!i--) эквивалентно такой:
Обратите внимание на то, что в данном случае мы не можем сократить это до:
Так как декремент должен производиться в обоих вариантах условия, но строго до исполнения блока true, так как в ином случае Serial.print(i) покажет неверное значение.
конструкции вида - почти равнозначны, в первой переменная i периодически принимает отрицательное значение:
Почти - это только с float и госдумой бывает. А данном случае эти блоки работают по-разному:
ну так вы выводите значение в первой функции после декремента )))
Почти, подразумевается что декремент после проверки if а не до...
логически, функция 2 написана более правильно, i хотя бы и временно не выходит за диапазон положительных значений
Я не знаю, что там у кого подразумевается и зачем начинать опять водить поляков по лесу.
Конструкции неравнозначны, это единственное, что я хочу проиллюстрировать. А что там логически более правильно в разрезе алгоритма - не является предметом обсуждения эквивалентных аналогов выражения if(!i--).
так я о чем тут с #30 поста твержу: аналога функции 1 - нет
До исправления в вашем посте #52 было написано, что функции равнозначны. На это я и отвечал.
Ну, если рассуждать логически, то конструкция if (!i--) эквивалентно такой:
Обратите внимание на то, что в данном случае мы не можем сократить это до:
Так как декремент должен производиться в обоих вариантах условия, но строго до исполнения блока true, так как в ином случае Serial.print(i) покажет неверное значение.
Тогда внутри блок if() придется утыкать (i-1) , в местах, где оперируют переменной i.
Я сам не особо люблю эти ++/-- в составе других операторов, потому как легко запутаться, но в (!i--) он смотрится изящно. Надо посмотреть, как оно на выходе в ассемблер трансформируется и так же ли там красиво стоит.
Тогда внутри блок if() придется утыкать (i-1) , в местах, где оперируют переменной i.
пишите панятно
if (--i>0) ...
пишите панятно
if (--i>0) ...
нам же надо делитель - то-есть каждый n отрабатывать и видимо i должна быть на 1 больше
пишите панятно
if (--i>0) ...
if((--i>0)>0)...
Пешите исчо, исчо, исчо панятнее:
if((((--i>0)>0)>0)>0)...
PS. Не думаю, что if(-1)... и if(-1>0)... это одно и то же.
Что-то новых задач для новичков не наблюдается ...
Да, и первое приведённое решение имеет сильное ограничение по частоте вызова функции, лучше так ))):
Да, и первое приведённое решение имеет сильное ограничение по частоте вызова функции, лучше так ))):
Если уж говорить и частоте, то зачем Вы пихаете RISING в прерывание? CHANGE сразу дало бы возможность вдвое уменьшить нижний предел частоты безо всякий фокусов с дополнительными счётчиками.
Что-то новых задач для новичков не наблюдается ...
А что, кто-то обещал? :) Эта задача появилась из занятий с внуком. Когда и если что-нить забавное ещё появится, выложу.
Кстати, о ребёнке. Он тут намылился поступать в ЗФТШ (кто не знает, - это заочная школа при Физтехе). Посмотрел я на его задачи и прибалдел. То ли, с тех пор как я там учился, задачи сильно просели в сложности, то ли я как-то изменился, но меня поразила лёгкость вступительных задач.
Вот, например, одна задачка. Моему ребёнку её не нужно было, решать - она от восьмого класса, а он в седьмом, но он едва прочитав её, решил устно, чем вызвал ахрененный прилив гордости у деда :-))
Задача №7 по физике - стр.10 в самом низу.
Вот, например, одна задачка. Моему ребёнку её не нужно было, решать - она от восьмого класса, а он в седьмом, но он едва прочитав её, решил устно, чем вызвал ахрененный прилив гордости у деда :-))
Задача №7 по физике - стр.10 в самом низу.
Мне от Касперыча задача понравилась (может потому, что решил её влёт, за пару секунд, в уме и не привлекая Гаусса)...
есть запись чисел в строке...1234567891011..20182019
Делится ли сумма всех чисел без остатка на 9...
То-есть 1+2+3..+9+1+0+1+1...+2+0+1+9
)))
PS особо не искал, но сходу не нашёл ограничения по частоте на функцию tone() а знать хотелось бы, tone(1) точно не работает )))
PPS меня внучки радуют пока только словарным запасом )))
[Вот, например, одна задачка. Моему ребёнку её не нужно было, решать - она от восьмого класса, а он в седьмом, но он едва прочитав её, решил устно, чем вызвал ахрененный прилив гордости у деда :-))
Задача №7 по физике - стр.10 в самом низу.
я тоже решил устно :) и это. прямо скажем, показатель :)
PS особо не искал, но сходу не нашёл ограничения по частоте на функцию tone()
built-in tone() function frequency range is 31 Hz - 65.5kHz
я тоже решил устно :) и это. прямо скажем, показатель :)
Видимо, Ваш дед тоже Вами гордится :)
PS особо не искал, но сходу не нашёл ограничения по частоте на функцию tone() а знать хотелось бы, tone(1) точно не работает )))
Раз за разом Вы меня просто уби... поражаете до глубины души.
PS особо не искал, но сходу не нашёл ограничения по частоте на функцию tone() а знать хотелось бы, tone(1) точно не работает )))
Раз за разом Вы меня просто уби... поражаете до глубины души.
Видимо бегло смотрел, у меня с английским не важно, только поговорить )))
PS но знал, что ограничения есть, в цифирьках не запомнилось
PPS Вы задачку от Касперского решили, устно? Нет - тоже удивите )))
[
PPS Вы задачку от Касперского решили, устно? Нет - тоже удивите )))
ни делитца
PPS Вы задачку от Касперского решили, устно? Нет - тоже удивите )))
Вы меня извините, но после истории с виртуалкой на 9MHz я Ваших словах логики не ищу. Зачем терять время на бессмыслицу?
Вы меня извините, но после истории с виртуалкой на 9MHz я Ваших словах логики не ищу. Зачем терять время на бессмыслицу?
да лан, я вот сейчас на работе сижу, мозги свободны :) - посчитал в уме - сумма всех цмифр чисел от 0 до 2019 = 28140 - на 9 неделится :)
Вы меня извините, но после истории с виртуалкой на 9MHz я Ваших словах логики не ищу. Зачем терять время на бессмыслицу?
да лан, я вот сейчас на работе сижу, мозги свободны :) - посчитал в уме - сумма всех цмифр чисел от 0 до 2019 = 28140 - на 9 неделится :)
Как говаривал Евгений Петрович - а на хрена??? Да и за две секунды ...сильно сомневаюсь...здесь надо вспомнить арифметику 4 класса )))
PS Гоги, сколько будет дважды два - сорок учитель... )))
PPS Вы задачку от Касперского решили, устно? Нет - тоже удивите )))
Вы меня извините, но после истории с виртуалкой на 9MHz я Ваших словах логики не ищу. Зачем терять время на бессмыслицу?
Позавчера созерцали с приятелем ЛУНУ, облака на высоте 5 километров проплывали за ней, наверное тоже логики нет, до облаков 7 километров, до Луны 380тыщ, ни какой логики... )))
да лан, я вот сейчас на работе сижу, мозги свободны :) - посчитал в уме - сумма всех цмифр чисел от 0 до 2019 = 28140 - на 9 неделится :)
Как говаривал Евгений Петрович - а на хрена??? Да и за две секунды ...сильно сомневаюсь...здесь надо вспомнить арифметику 4 класса )))
всякие признаки деления использовать - это читерство :). Счет полной суммы занял минуты полторы... я не слишком быстр мозгами. Больше всего промучился с числами от 2000 до 2019 :)
Дим, да там, поди для сложения/оценки, какие-нить заученные приемчики должны быть применены (как в истории про бочку) - люди-то одинаковые везде. Найдут, что понимают лучше и давай тиранить окружающих.
Дим, да там, поди для сложения/оценки, какие-нить заученные приемчики должны быть применены (как в истории про бочку) - люди-то одинаковые везде. Найдут, что понимают лучше и давай тиранить окружающих.
Да какие приемнички, я же сказал, всё в 4 классе преподавали, в нашей, церковно-приходской )))
1. Если один из сомножителей делится на цело, без остатка, то и произведение двух чисел делится без остатка
2. Имеем сомножители 1+ 2 0 1 9 = 1+2+0+1+9 = 13 нацело не делится (2 + 2 0 1 8) = 13...
3. Таких пар 1009 - нацело не делится )))
Давайте теперь размышлять логически: у вас был учитель, который знал это правило и решил его объяснить ученикам. В другой школе учитель не знал этого правила или посчитал ненужным донести его до учеников. Виноват ли в этом ученик, который не узнал данное правило? Справедливо ли утверждение о том, что не будь у вас учителя, который хотел и вдолбил в головы учеников данный приём, вы бы выглядели так же глупо на фоне остальных?
Да какие приемнички, я же сказал, всё в 4 классе преподавали, в нашей, церковно-приходской )))
1. Если один из сомножителей делится на цело, без остатка, то и произведение двух чисел делится без остатка
2. Имеем сомножители 1+ 2 0 1 9 = 1+2+0+1+9 = 13 нацело не делится (2 + 2 0 1 8) = 13...
3. Таких пар 1009 - нацело не делится )))
глупость написана - и доказать очень легко.
Из того, что (1+ 2 0 1 9) = 13 и (2 + 2 0 1 8) = 13 вовсе не следует, что сумма цифр любой пары из 1009 - тоже 13. Возьми число 999 - в нем одном сумма цифо УЖЕ 27...
Давайте теперь размышлять логически: у вас был учитель, который знал это правило и решил его объяснить ученикам. В другой школе учитель не знал этого правила или посчитал ненужным донести его до учеников.
да нет тут никакого правила. Ошибка логики - вот и вся "ценность" этого решения "за пару секунд в уме"
Давайте теперь размышлять логически: у вас был учитель, который знал это правило и решил его объяснить ученикам. В другой школе учитель не знал этого правила или посчитал ненужным донести его до учеников.
да нет тут никакого правила. Ошибка логики - вот и вся "ценность" этого решения "за пару секунд в уме"
Честно говоря - я не пересчитывал, потому что после определенного количества факапов я перестаю вникать в то, что пишет человек. Однако, он утверждает, что данное правило должны знать все (как и с пресловутой бочкой), в связи с чем я привожу пример экзистенциальной (благодарю ЕвгенияП за напоминание о понятии) природы знаний индивидуума и крайней субъективности их оценки.
очень полезное свойство - уметь хотя бы примерно прикидывать порядок результата
Среднее число цифр в таких парах - порядка 6. Среднее значение цифры(от 0 до 9) - 4.5. При таком раскладе ну никак не может средняя сумма 6 цифр со средним 4.5 иметь значение 13 :)
Еще немного подумал, пока домой ехал - мозги опять свободны :)
Правило такое и правда есть. Только у него четкие границы применения, о которых наш друг ua6em забыл. Как говорили в моей "церковно-приходской" - "слышал звон, да не знает где он".
Правило подсчет сумм цифр в ряду парами работает при двух условиях:
- первая цифра ряда должна быть 0 (на сумму цифр ряда - начинать с 0 или 1 - конечно не влияет, но вот сумма цифр в паре - меняется)
- ряд должен заканчиваться числом, у которого во всех разрядах, кроме старшего - стоят девятки
То есть для ряда от 0 до 9 - правило работает, (0 +9) + (1+8) + (2+7) .... = 45
А вот от 0 до 11 - нет :)
Так же правило работает для 0-29, 0-99 или 0-3999.
Но вполне ожидаемо лажает для ряда 0-2019, я уж не говорю про ряд 1-2019 :)
Кстати, вполне возможно, что в той одиозной задачке про бочку имеем что-то подобное - товарищ когда-то знал правильное красивое решение, но условия давно стерлись из памяти, а логические допуски перепутались :)
Ахренеть!
Ахренеть!
Ты тоже следишь? Я уже давно в ахуе! Куда там Э.С.Гарднер или Р.Чандлер ;)))) Тут и страсти и интрига...
Может стоит попробовать это издать? Только с владельцем сайта о копирайте договориться...
Кстати, вполне возможно, что в той одиозной задачке про бочку имеем что-то подобное - товарищ когда-то знал правильное красивое решение, но условия давно стерлись из памяти, а логические допуски перепутались :)
Вот я лажанулся...почти...ответ то правильный...правда над задачей точно не думал )))
А про бочку Пух выдал правильное решение, только плюс с минусом перепутал, квадрат
гипотенузы (радиус) равен сумме квадратов катетов (радиус минус приращение в мм),
найти площадь прямоугольника далее какие сложности, естественно все площади потом суммируются
PS у Касперского как одно из решений разбивать на пары делящиеся без остатка на 9
Вот я лажанулся...почти...ответ то правильный..
:))))))
В вопросе "делится ли на 9" - всегда говори не делится - вероятность правильного ответа 88% :)
Ахренеть!
А что поделать, если у старожилов данного ресурса снобизм и чувство собственного превосходства лезут со всех щелей, ну и как говорил по моему Бисмарк, "если не можешь уничтожить - возглавь"!!!
ЗЫ не вивисекция, меру взаимодействия, описанную в трудах Литвака не переходил )))