Рациональные приёмы вычислений на уроках математики
Разделы: Математика
Класс: 4
Ключевые слова: математика
«Мозг хорошо устроенный ценится больше,
чем мозг хорошо наполненный.»
Умения рационально производить вычисления характеризуют довольно высокий уровень математического развития. Знакомство и применение рациональных способов вычислений развивает вариативность мышления, показывает ценность знаний, которые при этом используются. Эти умения чрезвычайно сложны, формируются они медленно и за время обучения в начальной школе далеко не у всех детей могут быть достаточно сформированы.
Говорят, если хотите научиться плавать, вы должны войти в воду, а если хотите уметь решать задачи, то должны начать их решать. Но для начала надо освоить азы арифметики. Научиться считать быстро. Считать в уме можно только при большом желании и систематической тренировки. И тогда перед вами откроется совсем другая математика: живая, полезная, понятная.
Скажите, пожалуйста, как рациональнее сложить 1+ 7, 4 * 8? Какие законы применили?
27 + 46+13? 27 – 19 – 7? Какие свойства, законы? Т.е основы рациональных приёмов вычислений основаны на чём?
Методика преподавания математики в начальных классах раскрывает основы рациональных приёмов вычислений, связанных с выполнением разных математических действий с натуральными числами.
Рациональные приёмы сложения основываются
1. Коммуникативный закон сложения а +в =в +а
2. Ассоциативный закон сложения а+в+с = а+ (в+с)
на коммуникативном и ассоциативном приёмах сложения, а так же свойствах изменения суммы. Рассмотрим некоторые из них.
Свойства сложения.
1.1
а+в+с =У, то (а – к) +с+в = У –к
38+24+15 = 77, то 36+ 24+ 15 = ?
а+в+с=У, то (а+ к) +в +с = У+к
38 + 24+15 = 77, то 40+ 24 + 15 =?
1.2.
а+ в =С , то (а +к ) + (в – к) = С
56 + 27 = 83, то (56 + 4) + (27 – 4) = ?
Какие ещё рациональные приёмы сложения можно применить на уроке математики?
Округление одного из слагаемых; поразрядного сложения; приём группировки вокруг одного и того же «корневого» числа.
Рассмотрим эти приёмы:
13 + 49 + 76 + 61 = (поразрядное сложение)
38 + 59 = 38 + (…округление слагаемого)
26 + 24 + 23 +25 + 24 = (группировка вокруг одного и того же «корневого» числа
Все приёмы рациональных вычислений, связанных с вычитанием, основываются на законах вычитания.
Если уменьшаемое увеличить или уменьшить на число, то соответственно разность увеличится или уменьшится на это же самое число
а – в = С, то (а +к) — в = С +к
74 – 28 = 46, то 77 – 28 = 49
а-в = С , то (а – к ) — в = С-к
74 – 28 = 46, то 71 – 28 = 43
Если вычитаемое увеличить или уменьшить на несколько единиц, то разность измениться в противоположную сторону.
Если уменьшаемое и вычитаемое уменьшить или увеличить на одно и тоже число, то разность не измениться.
Найди верные равенства.
229 – 36 = (229 – 9 ) – ( 36 – 6)
174 – 58 = (174 – 4) – ( 58 – 4)
358 – 39 = ( 358 – 8 ) – (39 – 8)
617 – 48 = ( 617 – 7 ) – (48 – 8)
Для рациональных вычислений используют частичные приёмы умножения и деления.
Приём замены множителя или делителя на произведение.
75 * 8 = 75 * 2*2*2=
960 : 15 = 960 : 3 : 5 =
Приём умножения на 9, 99,999, 11 …
87 * 99 = 87 * 100- 87 = 8700 – 87 = 8613
87 * 11 = 87 *10 + 87 = 870+ 87 = 957
Успешное применение различных приёмов зависит от умения подмечать особенности чисел и их сочетаний. Например, познакомив детей в первом классе с натуральным рядом чисел и имея его перед глазами, легко закрепить состав числа.
0 1 2 3 4 5 6 7
Отработав, таким образом, состав чисел в пределах 10 и познакомившись с переместительным законом сложения, дети легко справляются с заданием найти сумму чисел в пределах 10, а в дальнейшем, используя переместительное и сочетательное свойство сложения, легко можно найти сумму других чисел. Например:
48 +14 +22 +36 =120
Существуют приёмы на знаниях некоторых свойств чисел или результатов действий. Легко находить сумму последовательных нечётных чисел, начиная с 1.
Она равна произведению количества слагаемых на самого себя. (проверить)
Рационализация может осуществляться за счет возможности выполнять некоторые арифметические действия. Для этого очень важно научить детей внимательно рассматривать условия задания, суметь подметить все его особенности. Такие задания, как поставь нужный знак действия16 … 17 = 33 ( рассуждать), далее подобные задания усложняются. 8…6…33 = 15
Сравни, не вычисляя
51 : 3 … 30 : 3 + 21 :5
636 :6 … 600 : 6+ 30 : 6+ 6 :6
Задания могут даваться в занимательной форме: Математический лабиринт, составь слово, найди пару , расшифруй пословицу и т.д.
Используй рациональные приёмы вычисления, разгадай слово
Какие приёмы использовали?
Важно показать ученикам красоту и изящество устных вычислений, используя разнообразные вычислительные приёмы, помогающие значительно облегчить процесс вычисления.
СЧЁТ НА ПАЛЬЦАХ: способ быстрого умножения чисел первого десятка на 9. Допустим нам надо умножить 7 на 9. Повернём ладошки к себе, загнём седьмой палец, число пальцев слева от загнутого пальца – это число десятков, а число – справа, количество единиц.
Все задания, которые рассматривались, воспитывают интерес к математике, развивают их математические способности. Такую работу можно продолжать на математическом кружке.
Источник
Распределённые вычисления: немного теории
Девять лет назад я начал «в свободное от основной работы время» преподавать компьютерные дисциплины в одном из университетов Санкт-Петербурга. И только сравнительно недавно к своему удивлению обнаружил, что в наших вузах практически отсутствуют курсы с фокусом на проблематику распределённых вычислений. И даже на Хабре эта тема не раскрыта в достаточной мере! Надо прямо сейчас исправлять ситуацию.
Этой теме я и хотел посвятить статью или даже серию статей. Но потом решил выложить своё учебное пособие по основам распределённых вычислений, вышедшее в свет в этом году (читай, небольшую книгу объемом 155 страниц). В итоге получился гибрид – статья со ссылкой на книгу. Книга распространяется бесплатно и доступна в электронном виде.
Вместо пролога. Приступив к тексту статьи, я в очередной раз задумался, а зачем программисту нужно знать теоретические основы распределённых вычислений. Этот вопрос я неоднократно слышал (и продолжаю слышать) от студентов и специалистов, уже работающих в области ИТ. Действительно, зачем, например, знать, что «множество событий распределённого вычисления упорядочено частично, а не линейно»? В чем, так сказать, каждодневная практическая польза этого фундаментального знания?
Должен признать, что у меня нет готового заученного ответа, который я могу выдать не задумываясь. Поэтому каждый раз приходится напрягаться извилинами, и каждый раз ответы и аргументы получаются разными. Вот и сейчас всё как впервые…
Давайте попробуем начать издалека. И чтобы было нагляднее – с медицины. Потому как, если речь заходит о врачебных ошибках, мозг начинает активно работать и генерировать сильное возмущение: ужас, ужас, могли человека угробить. Что они там, совсем что ли? Неужели не знают, чего делают?
Все мы совершенно естественным образом рассчитываем на то, что перед тем как начать какие-либо манипуляции с человеческим организмом врачи всё-таки изучают его внутреннее устройство и принципы работы. Мы абсолютно не согласны с утверждением, что хирургам гораздо важнее пройти практические курсы кройки и шитья вместо многолетней зубрежки теоретического материала о том, что у нас там внутри и зачем оно там. Так почему же программистам, занимающимся разработкой системы с сетевым взаимодействием (т.е. к настоящему моменту практически любой системы), не нужно знать «что там внутри и зачем оно там»? Почему ошибки в ИТ воспринимаются максимум с легкой иронией? Ну да, ну баг. А кто не пьет не делает багов?! Назови! Нет, я жду! Среди требований к программистам очень часто почему-то на передний план выходят практические навыки владения тем или иным языком программирования. Причем сильно на передний план, полностью затмевая собой требования к пониманию основных концепций, теоретических моделей, алгоритмов, в конце концов… Да и сами программисты, чего греха таить, с началом разговора «про никому не нужную теорию» вянут как цветы в пустыне… Чудеса, не правда ли…
Приведу небольшое высказывание Л. Лэмпорта на эту тему (чуть ниже я постарался перевести это высказывание на русский язык, не сильно отдаляясь от оригинала):
For quite a while, I’ve been disturbed by the emphasis on language in computer science. One result of that emphasis is programmers who are C++ experts but can’t write programs that do what they’re supposed to. The typical computer science response is that programmers need to use the right programming / specification / development language instead of / in addition to C++. The typical industrial response is to provide the programmer with better debugging tools, on the theory that we can obtain good programs by putting a monkey at a keyboard and automatically finding the errors in its code.
I believe that the best way to get better programs is to teach programmers how to think better. Thinking is not the ability to manipulate language; it’s the ability to manipulate concepts. Computer science should be about concepts, not languages.
Уже довольно длительное время меня беспокоит слишком большое внимание, уделяемое компьютерному языку в ИТ. В результате переизбытка такого внимания появляются программисты, которые являются экспертами в С++, но которые не в состоянии написать программы, делающие то, что от этих программ требуется. Типичная реакция представителей ИТ на эту проблему заключается в предложении программистам использовать другой более подходящий язык (программирования, спецификаций и т.п.) вместо / вдобавок к С++. В свою очередь характерный для индустрии разработки ПО выход из ситуации видится в предоставлении программистам более совершенных инструментов отладки, видимо, основываясь на предположении, что получить хорошие программы можно просто посадив мартышку за клавиатуру и затем отыскивая и исправляя ошибки в её коде.
Моё твердое убеждение в том, что для получения качественных программ необходимо учить программистов думать лучше. Умение думать – это не способность оперировать компьютерным языком; это способность оперировать концепциями. Изучение информационных технологий должно быть сфокусировано на изучении концепций, а не языков.
Для иллюстрации того насколько могут быть важны «концепции» и «элементы теории» в вопросах построения распределённых систем давайте рассмотрим парочку простеньких примеров. Для начала — групповую рассылку сообщений электронной почты между пользователями A, B, C и Х. Предположим, что пользователь А отправляет всей группе письмо с темой «Общее собрание». Пользователи В и С отвечают на него всей группе своими сообщениями с темой «Re: Общее собрание».
В действительности события происходят в следующей последовательности:
- Первым отправляется сообщение от пользователя А.
- Пользователь В получает его, читает и отправляет ответ.
- Пользователь С получает оба сообщения от А и В и затем отправляет свой ответ, опирающийся на оба сообщения от А и В.
Однако в связи с произвольными и независимыми задержками доставки сообщений, некоторые пользователи могут видеть другую последовательность наступления событий. Например, согласно сценарию, приведённому на рисунке ниже, в почтовом ящике пользователя Х сообщения будут располагаться в следующем порядке:
- Сообщение от пользователя С с темой «Re:Re: Общее собрание».
- Сообщение от пользователя А с темой «Общее собрание».
- Сообщение от пользователя В с темой «Re: Общее собрание».
Ага, оказывается порядок поступления сообщений, наблюдаемый различными процессами, может быть различным даже для FIFO каналов! А что делать, если мы хотим, чтобы наблюдаемый порядок был везде одинаков (и при этом не хотим использовать синхронный обмен сообщениями)? К примеру, если мы пишем свой транспорт с соответствующими гарантиями. Или хотим построить отказоустойчивую службу (replicated state machine), где каждая реплика должна обрабатывать поступающие запросы в едином для всех реплик порядке, чтобы состояния реплик не различались? Вопрос…
Рассмотрим теперь еще одно выполнение распределённой системы, в которой процессы взаимодействуют только с помощью обмена сообщениями, и каждый процесс занимается включением / выключением фонаря с определенным светом. Пусть первый процесс управляет фонарем с красным светом, второй – с желтым, а третий – с зеленым. Такая вот светофорная система. На рисунке ниже включение процессом своего фонаря обозначено прямоугольником, а выключение – вертикальной линией; отправка и получение сообщения – стрелкой. Вопрос: могут ли процессы определить, какие фонари светили одновременно?
Так вот оказывается, что в данном выполнении асинхронной системы процессы никак не смогут определить был ли включен красный свет одновременно с желтым. Может быть да. А может и нет… Сие останется неизвестным. Но зато будет точно известно, что красный и зеленый фонари одновременно находились во включенном состоянии. Другими словами, оказывается, нет особого смысла говорить о том, что то или иное глобальное состояние достигается по ходу выполнения распределённой системы! Равно как и очень часто нельзя сказать, выполнялось ли какое-либо условие (предикат), заданное на множестве его глобальных состояний! Опять же вопрос: почему?
Наш ответ Чемберлену. На самом деле ответы на эти и многие другие вопросы, связанные с работой асинхронных распределённых систем, крайне сложно уложить в рамки одной статьи. Поэтому я и решил опубликовать сразу несколько статей в одной. Точнее, как указано в начале статьи, представить свою небольшую книгу по основам распределённых вычислений, доступную в электронном виде.
Из этой книги вы узнаете:
- про причинно-следственный порядок событий распределённого вычисления
- что такое справедливость, безопасность и живучесть
- что такое конус прошлого и конус будущего для события вычисления
- чем логический параллелизм отличается от физического параллелизма
- почему не имеет особого смысла говорить о совокупности глобальных состояний вычисления, а имеет смысл говорить о совокупности событий вычисления
- как нам упорядочить события распределённого вычисления в одну или несколько последовательностей, которые «могли бы» происходить в системе
- что такое логические часы, и какое такое логическое время они отсчитывают
- почему логическое время останавливается, если в системе ничего не происходит
- чем скалярное время отличается от векторного
- как и для чего можно использовать логическое время в распределённых алгоритмах
- какие есть подходы к эффективной реализации векторных часов
- зачем нам может понадобиться матричное время
- чем распределённый алгоритм отличается от централизованного
- как решать задачу взаимного исключения без использования разделяемых переменных
- на какие категории делятся все распределённые алгоритмы взаимного исключения
- зачем в алгоритмах на основе получения разрешений используется логическое время
- почему философам так трудно пообедать в распределённой системе
- зачем нам граф конфликтов и граф предшествования
- почему граф предшествования должен меняться со временем
- почему в алгоритмах на основе передачи маркера есть еще много чего кроме собственно «передачи маркера»
- и, я надеюсь, ещё кое-что…
Из чего состоит книга и как её читать?
В начале я постарался в двух словах изложить, какие цели ставились при написании книги, и как она соотносится с другой литературой. Этому посвящено введение к книге. Оно занимает всего чуть более двух страниц, поэтому прочитать его стоит.
Первый раздел по большей части болтологический и посвящен «качественным» особенностям распределённых систем. Если вы не знаете, что такое распределённая система, и какие к ней предъявляются требования, то первый раздел имеет смысл прочитать. Если же вы знаете, что поступающие процессу-получателю сообщения могут давать устаревшее представление о процессе-отправителе, точно так же, как и световое излучение, поступающее к нам от далекой звезды, дает представление о состоянии этой звезды в прошлом, то первые четыре пункта можно пропустить 🙂 Отдельно стоит отметить п. 1.5 «Взаимодействие в распределённых системах», в котором я попытался привести несколько простых задач, демонстрирующих сложности, с которыми можно столкнуться при разработке распределённых систем. Эти задачи мы будем потом решать, вооружившись теоретическими знаниями, поэтому стоит с ними ознакомиться.
Во втором разделе представлена модель распределённого вычисления и основная теория, используемая при дальнейшем изложении. В определенном смысле этот раздел является ключевым. Однако надо быть готовым к работе с такими терминами как «множество / подмножество», «бинарное отношение», «отношение эквивалентности», «отношение порядка», «линейный / частичный порядок». В этом разделе вы встретите доказательства некоторых утверждений. Мне кажется, что их следует, как минимум, проглядеть (а лучше изучить) для более глубокого понимания существенных особенностей функционирования распределённых систем, выделяющих их среди систем других классов.
На базе теории, представленной выше, в третьем разделе, наконец, рассматриваются более практичные вещи, а именно, различные механизмы логических часов. С их помощью мы можем упорядочивать события в одну или несколько последовательностей, которые могли бы происходить в системе, что позволяет значительно упростить разработку алгоритмов для распределённых систем. Приводятся примеры использования логических часов для решения задач, сформулированных в п. 1.5 «Взаимодействие в распределённых системах».
Четвертый раздел посвящен изучению основных распределённых алгоритмов взаимного исключения, построенных без применения привычных разделяемых переменных. Ключевые идеи этих алгоритмов используются и для решения многих других задач в распределённых системах. Кроме того, их изучение позволяет раскрыть такие важные вопросы, как обеспечение свойств безопасности и живучести распределённых алгоритмов. Поэтому этот раздел мне представляется весьма полезным для ознакомления.
На кого ориентирована эта книга?
Материал книги следует рассматривать в качестве введения в проблематику распределённых вычислений. Она выросла из академической вузовской среды, и будет, безусловно, полезна, если вы только начинаете работать в этой области. Если же у вас уже есть определённый опыт в разработке распределённых систем и алгоритмов, возможно, вы найдете для себя что-то новое и поделитесь своим мнением в комментариях. Если же вы имеете многолетний опыт за плечами и являетесь экспертом в этой теме, надеюсь, что вы сможете дополнить меня своими мыслями и соображениями.
Чего бы мне хотелось?
Буду рад, если материал книги окажется для вас полезным и познавательным — будет время вернуться сюда после её прочтения и черкнуть «спасибо», буду признателен. Кроме того, мне бы хотелось собрать весь материал по теме, включая комментарии, вопросы и ответы в одном месте, чтобы потом отсылать сюда всех желающих, включая новые курсы новых студентов. Если вы сможете помочь и дополнить материал своими мыслями, своим опытом, буду признателен вдвойне. Читайте, набирайтесь знаний и используйте их в своей работе! Скачать книгу в формате PDF прямо сейчас вы сможете по ссылке ниже:
Успехов!
Михаил Косяков
Вместо эпилога. «Информация, в отличие от ресурсов, задумана, чтобы ею делились». Роберт Кийосаки
Источник