Образовательный проект Леонида Некина

Подробная инструкция по настройке и применению генератора примеров-прописей Primo-Arithmetic

Это устаревшая версия генератора, которая больше не поддерживается. С новой версией работать стало более удобно.

См.: Генератор арифметических примеров-прописей «Primo-Arithmetic»

 

Приложение к странице

Математические прописи и простейшие примеры по арифметике

Генератор примеров-прописей представляет собой макрос, то есть короткую вспомогательную программу, которая работает в среде редактора Microsoft Word. Этот макрос называется PrimoArithmetic. Будучи внедрен в специально отформатированный документ редактора Word, он позволяет автоматически генерировать примеры по арифметике, записанные шрифтом Primo.

Генерация примеров-прописей в редакторе Word

1. Старые версии Word (2000, 2003): В редакторе Word перейти в раздел меню
Сервис/Макрос/Безопасность
и выбрать уровень безопасности «средняя», после чего выйти из редактора.

В новых версиях (2007, 2010) ничего такого делать не нужно: требуемый уровень безопасности уже установлен по умолчанию — макросы при открытии файлов отключены, но есть возможность их активировать.

Замечание. Если, однако, впоследствии выяснится, что при попытке вызвать макрос появляется сообщение: «Макросы деактивированы» («The macros in this project are disabled»), то придется вернуться к этому пункту и проделать следующее. В основном окне редактора Word открыть слева вверху вкладку с символом Microsoft Office (версия 2007) или вкладку «Файл» (2010). В окрывшемся окне выбрать пункт «Параметры» (слева почти в самом низу). Далее в списке слева выбрать нижний пункт «Центр управления безопасностью». Нажать справа внизу кнопку «Параметры центра управления безопасностью». В списке слева выбрать «Параметры макросов». В списке справа выбрать пункт «Отключить все макросы с уведомлением». После чего нажать «OK» и выйти из редактора.

2. В редакторе Word открыть любой из файлов-генераторов, например, этот:

primo-arithmetic.doc.

(Множество других файлов-генераторов можно найти здесь.) Файл-генератор можно предварительно скачать на компьютер, но можно открыть его и непосредственно в браузере (щелкнув по ссылке левой кнопкой мыши и выбрав «Открыть в Microsoft Word»). На появляющиеся предупреждения о том, что файл содержит потенциальную опасность, так как скачан из интернета и содержит макросы, отвечать в том смысле, что редактирование файла разрешено и макросы должны быть активированы (конкретная форма предупреждений зависит от версии редактора Word).

3. Нажать комбинацию клавиш <Ctrl>+<Alt>+0. При этом макрос PrimoArithmetic автоматически сгенерирует арифметический пример. Для генерации следующего примера следует нажать <Ctrl>+<Alt>+0 повторно. Макрос PrimoArithmetic может также генерировать несколько примеров сразу: число одновременно генерируемых примеров задается в настройках (см. ниже).

4. Только для старых версий (2000, 2003): По завершению работы в редакторе Word перейти в раздел меню

Сервис/Макрос/Безопасность

и восстановить прежний уровень безопасности (рекомендуется «высокая»).

 

 

Настройка

Работа генератора задается набором параметров, которые можно редактировать. Комбинация клавиш <Alt>+<F11> открывает в среде редактора Word окошко с кодом макроса. В самом начале находится раздел PARAMETERS DEFINED BY USER. Здесь определяются константы, которые пользователь может менять по своему усмотрению.

MinSum и MaxSum — это, соответственно, минимальное и максимальное значение суммы в примерах на сложение.

MinFact1 и MaxFact1 — это минимальное и максимальное значение первого сомножителя в примерах на умножение.

MinFact2 и MaxFact2 — минимальное и максимальное значение второго сомножителя в примерах на умножение.

Примеры на вычитание и деление — это «перевернутые» примеры на сложение и умножение, поэтому для них не требуется дополнительных параметров, которые задавали бы диапазон используемых чисел. Так, в примерах на деление делитель находится в диапазоне от MinFact1 до MaxFact1.

FractMultAndDiv — это доля примеров на умножение и деление в общем числе примеров. Если этот параметр равен нулю, то примеры на умножение и деление не генерируются.

FractSubstr — доля примеров на вычитание в числе примеров на сложение и вычитание.

FractDiv — доля примеров на деление в числе примеров на умножение и деление.

FractMultPower10 — этот параметр имеет следующий смысл. Как известно, сложность примера увеличится лишь ненамного, если к обоим слагаемым (или к одному из множителей) приписать некоторое количество нулей. Данный параметр задает долю примеров с приписанными нулями в общем числе примеров. Если этот параметр равен нулю, то нули никогда не приписываются.

FractSpecial — этот параметр влияет только на примеры на сложение и вычитание. Иногда желательно, чтобы ребенок потренировался складывать числа, которые дают в сумме число круглое или близкое к круглому, например 1000, 901, 802 и т.п. Соответственно, вычитание из подобных чисел также представляет особый интерес. Назовем такие числа «специальными». Данный параметр задает долю «специальных» примеров в числе примеров на сложение и вычитание.

FractEquation — доля «уравнений» в общем числе примеров. На самом деле это не совсем уравнения: вместо переменной «икс» оставлен пробел, куда ребенок должен вписать подходящее число.

MaxPower10 — задает максимальное количество нулей, которые могут быть приписаны к обоим слагаемым или к одному из множителей.

NumSpecial — количество «специальных» чисел.

NegativeAllowed (принимает значение True или False) — определяет, может ли значение разности быть отрицательным: True — да, False — нет.

RemainderAllowed (принимает значение True или False) — задает тип примеров на деление: True — деление с остатком, False — деление нацело.

Grey (принимает значение True или False) — определяет цвет, которым записываются примеры: True — серый, False — черный.

NumItems — число примеров, генерируемых за один раз.

Div — задает символ деления в примерах на деление нацело. В математической литературе для этого используется косая черта "/". Однако если вам больше нравятся школьные стандарты, вы можете использовать двоеточие ":". (В примерах на деление с остатком двоеточие используется в любом случае.)

Space — задает количество пробелов, которым отбиваются знаки «плюс», «минус» и «равно». Стандартное значение — два пробела "  ", что соответствует одной клетке линовки. Значение "" означает отсутствие пробелов.

В самом конце раздела перечислены все «специальные» числа: Special(1), Special(2) и т.д. Количество «специальных» чисел (практически) не ограничено, однако оно должно соответствовать значению параметра NumSpecial.

 

 

 

Вопросы и комментарии

23 апреля, 2021 - 00:44

Федор

Странно, что второй пример генерируется шрифтом Times New Roman. Первый и все остальные - Primo. Office 2019 Версия 2103 (сборка 13901.20400).
Что при одиночной генерации по шоткату, что при NumItems = 20.

23 апреля, 2021 - 19:35

Леонид Некин

Леонид Некин's picture

Спасибо за сообщение о баге, но, скорее, странно, что вообще что-то работает, потому что это очень старая версия, а новая здесь:
https://nekin.info/prog/primo-arithmetic-manual.html

 Ответить  

3 июля, 2018 - 09:49

Moris

Здравствуйте!
А на каком это языке код?

3 июля, 2018 - 23:44

Леонид Некин

Леонид Некин's picture

Visual Basic for Applications (VBA)

 Ответить  

29 сентября, 2017 - 14:19

scorpions79@yan...

Здравствуйте. Как сделать примеры на преобразование дм в см?

5 октября, 2017 - 16:43

Леонид Некин

Леонид Некин's picture

Если вам нужно только это, то лучше не стрелять из пушки по воробьям - проще написать такие примеры от руки, чем разбираться с какими-то генераторами. Но вообще-то, то, о чем вы спрашиваете, - это задание 51 из генератора "Перевод единиц денежной стоимости, расстояния, массы", доступного на странице
http://nekin.info/math/uprazhneniya_i_zadachi.htm

 Ответить  

15 ноября, 2015 - 18:36

Анастасия

Добрый день! Спасибо вам за такой хороший инструмент для детей и, в первую очередь, для родителей. Пользуемся и прописями и примерами. Возник вопрос. Как можно сделать примеры из количества слагаемых более 2?
На пример 5+3-1=

15 ноября, 2015 - 21:31

Леонид Некин

Леонид Некин's picture

Если не в виде прописей, а в виде обычных примеров, то это можно сделать, взяв за основу "Примеры на сложение и вычитание в два действия без скобок" со страницы
http://nekin.info/math/uprazhneniya_i_zadachi.htm
Для этого в генераторе
http://nekin.info/math/xrc/100/100002_2dejstvija_bez_skobok.dot
надо поменять значения параметров {n}, {b+1}, {b+2} и {b3}.
{n} - это число арифметических операций в примере.
{b3} задает максимальное число, в пределах которого производятся все вычисления.
{b+1} должно быть примерно равно одной четверти от {b3}.
{b+2} должно быть примерно равно трем четвертям от {b3}.
Для примеров из двух арифметических действий в пределах десяти значения параметров таковы:
{n} = 2
{b+1} = 3
{b+2} = 7
{b3} = 10

 Ответить  

29 ноября, 2014 - 19:37

Ирина Г.

Я имела в виду файл arithmetic.doc. В нём в коде макроса нет такого параметра.

29 ноября, 2014 - 22:37

Леонид Некин

Леонид Некин's picture

Строку

Const Div As String = "/"

надо заменить на

Const Div As String = ":"

Возможно, содержимое окошка надо прокрутить немножко вниз, чтобы увидеть эту строку. Но можно воспользоваться и поиском.

 Ответить  

29 ноября, 2014 - 19:14

Ирина Г.

Здравствуйте. Как сделать знак деления в виде двоеточия ":". Я поняла что можно изменить знак, но как это сделать не понятно.
Не могу найти Div, и что с ним делать?

 Ответить  

11 мая, 2014 - 23:25

Сергей

Как сделать что-бы в примерах деление с остатком, исключить примеры с остатком равным 0, что бы все примеры были с остатком.

12 мая, 2014 - 13:14

Леонид Некин

Леонид Некин's picture

1. Нажать Alt+F11 - откроется окошко с кодом макроса.

2. Найти строку

r = Int(t1 * Rnd)

и поменять ее на

r = Int((t1 - 1) * Rnd) + 1

 Ответить  

18 декабря, 2012 - 06:11

Андрей

Как сделать второе слагаемое от 1 до 3 не более, а потом можно его увеличивать до 4, 5 и т.д., а то они прибавляют только 1,2,3. Спасибо.

18 декабря, 2012 - 13:48

Леонид Некин

Леонид Некин's picture

1. Нажмите Alt+F11 - откроется окошко с кодом макроса.

2. Найдите строку

t2 = Int((MaxSum + 1) * Rnd) * m

и замените ее на

t2 = (1 + Int(3 * Rnd)) * m

Вместо "3" можете поставить другое число - оно как раз означает максимальное значение второго слагаемого.

3. Если понадобятся также примеры на вычитание, то в дополнении к этому, найдите строку

str0 = CStr(s) & ChrW(&H2013&) & CStr(t1) & "="

и поменяйте в ней t1 на t2.

Примечание. Ограничения на максимальную и минимальную сумму, задаваемые параметрами MinSum и MaxSum, остаются в силе.

 Ответить  

6 декабря, 2012 - 17:03

Евгения

Большое спасибо за Ваш труд. Вопрос по шаблону. Как изменить размер клетки?

7 декабря, 2012 - 16:23

Леонид Некин

Леонид Некин's picture

Смотря по тому, какой размер Вам нужен. Если стандартный - 5мм - то достаточно просто распечатывать на одном листе сразу две страницы.

 Ответить