Дорогие пользователи! С 15 декабря Форум Дети закрыт для общения. Выражаем благодарность всем нашим пользователям, принимавшим участие в дискуссиях и горячих спорах. Редакция сосредоточится на выпуске увлекательных статей и новостей, которые вы сможете обсудить в комментариях. Не пропустите!
У нас в классе уже были разбирательства по этому вопросу, сказали, что в карантин новых тем давать не будут.
У нас в классе уже были разбирательства по этому вопросу, сказали, что в карантин новых тем давать не будут.
У нас в классе уже были разбирательства по этому вопросу, сказали, что в карантин новых тем давать не будут.
Но расскажите, ради бога, что такое "осознать задачу"?
Но расскажите, ради бога, что такое "осознать задачу"?
1. Надо перебрать все числа.
Раз в задаче о сумме цифр, то число представляем как xyz. Надо перебрать суммы x + y + z.
Кратность 4 - это максимальная сумма = 27, и наши варианты 4, 8, 12, 16, 20, 24. Ну или как-то функции использовать, или 2 раза на 2 можно поделить, зависит от возможностей.
Составляем программу: раз перебор, значит циклы по всем переменным. Ставим условие, что если сумма подходит, то печатаем число xyz. И в цикле х должен быть от 1 до 9, остальные от 0 до 9.
Дальше я уже по печати смотрю, где налажала.
1. Надо перебрать все числа.
Раз в задаче о сумме цифр, то число представляем как xyz. Надо перебрать суммы x + y + z.
Кратность 4 - это максимальная сумма = 27, и наши варианты 4, 8, 12, 16, 20, 24. Ну или как-то функции использовать, или 2 раза на 2 можно поделить, зависит от возможностей.
Составляем программу: раз перебор, значит циклы по всем переменным. Ставим условие, что если сумма подходит, то печатаем число xyz. И в цикле х должен быть от 1 до 9, остальные от 0 до 9.
Дальше я уже по печати смотрю, где налажала.
то такое оканчиваются на 12: 12, 112, 212, 312, 412, 512 и до 1912 вроде бы. Как они получаются: x*100 + 12, где x = 0 до 19. Вроде бы так...
Три способа: видимо в лоб сложить-умножить, второй и третий - это как-то покрутить с формулами... на ум приходят арифметические и геометрические прогрессии, но как-то их хитро надо... и может не это хотели, а Оле образование голову тянет. Может пятиклассник сам сообразит, типа, в голове варианты появились разные, как циклы гнать - пусть и оформляет все идеи.
Раз программирование, то наверное три способа сложить-умножить в лоб, но чтобы разные циклы были.
то такое оканчиваются на 12: 12, 112, 212, 312, 412, 512 и до 1912 вроде бы. Как они получаются: x*100 + 12, где x = 0 до 19. Вроде бы так...
Три способа: видимо в лоб сложить-умножить, второй и третий - это как-то покрутить с формулами... на ум приходят арифметические и геометрические прогрессии, но как-то их хитро надо... и может не это хотели, а Оле образование голову тянет. Может пятиклассник сам сообразит, типа, в голове варианты появились разные, как циклы гнать - пусть и оформляет все идеи.
Раз программирование, то наверное три способа сложить-умножить в лоб, но чтобы разные циклы были.
И куда оценка потом? Хотя бы одним способом сделать, а там уже будет видно...Может в процессе всплывут нюансы и станет понятно, откуда три способа можно взять. Когда перемножать будете там большое число получится... и если памяти под число не хватает, то начинают извращаться.
И куда оценка потом? Хотя бы одним способом сделать, а там уже будет видно...Может в процессе всплывут нюансы и станет понятно, откуда три способа можно взять. Когда перемножать будете там большое число получится... и если памяти под число не хватает, то начинают извращаться.
первый способ = цикл от 0 до 19 и представление числа 100* + 12.
второй способ = использовать while цикл и условие выхода "пока не нашли 20 чисел". Внутри цикла просто перебираете по одному, смотрите, что заканчивается на 12 через строку, и как нашли, увеличиваете счетчик для цикла и складываете-умножаете.
Это больше к программированию относится. )))
Третий пока еще не знаю, но может форум поможет )))
первый способ = цикл от 0 до 19 и представление числа 100* + 12.
второй способ = использовать while цикл и условие выхода "пока не нашли 20 чисел". Внутри цикла просто перебираете по одному, смотрите, что заканчивается на 12 через строку, и как нашли, увеличиваете счетчик для цикла и складываете-умножаете.
Это больше к программированию относится. )))
Третий пока еще не знаю, но может форум поможет )))
одна математическая, т.е. тупо понять как решать, как перекручивать числа и прочие данные. Все эти мои x*100 + 12 и т.п. или тупо в лоб идти.
А вторая часть - это просто знать возможности языка, все эти циклы, break, условия и прочие мульки, типа счетчиков, которыми можно решение, полученное на первом шаге, загнать в программу.
Тогда все будет получаться.
одна математическая, т.е. тупо понять как решать, как перекручивать числа и прочие данные. Все эти мои x*100 + 12 и т.п. или тупо в лоб идти.
А вторая часть - это просто знать возможности языка, все эти циклы, break, условия и прочие мульки, типа счетчиков, которыми можно решение, полученное на первом шаге, загнать в программу.
Тогда все будет получаться.
А до какого уровня вы докопали?
Когда будет:
- взяли число
- если такое значение, то делаем это, если другое, то делаем то-то или ничего не делаем.
- сложили
- еще раз чего-то там проверили
- взяли другое число.
это уже готовый алгоритм. Все это раздумья, как решать задачу.
Дальше надо понимать что есть в языке и что можно использовать с точки зрения учителя. Повторение - это цикл, "если" - это if и т.д.. Можно ли использовать готовую mod для проверки кратности, или надо самим писать проверку в рамках обучения. Как оформлять - смотрим блок-схему и язык программирования.
В какой-то момент все становится очень прозрачно и очень тупо на вашем уровне программирования.
А сложности у программистов в том, что пытаются написать очень сложные взаимодейтствия и впихнуть невпихуемое, или сделать то, чего раньше никто не делал, выдержав сроки. Так что перестаем бояться и начинаем действовать.
первый способ = цикл от 0 до 19 и представление числа 100* + 12.
второй способ = использовать while цикл и условие выхода "пока не нашли 20 чисел". Внутри цикла просто перебираете по одному, смотрите, что заканчивается на 12 через строку, и как нашли, увеличиваете счетчик для цикла и складываете-умножаете.
Это больше к программированию относится. )))
Третий пока еще не знаю, но может форум поможет )))
В цикле просто перебираете числа x подряд от 0 и до очень большого и ищите числа, оканчивающиеся на 12. А счетчик, что нашли 20 значений, увеличиваете внутри цикла, как найдете нужное число... ну и складываете умножаете. И условие, что как счетчик стал = 20, то break или выход из цикла и печать результатов.
Как всегда с формулировками не ясно, и на что нажимать хотят ))) И блин, то 3-ех лет робототехника и т.п., то в 5 классе снова пирамидку собирают
это на паскале вторая ссылка из гугла на ваш запрос)
var
s:string;
i,a:integer;
begin
for i:=100 to 999 do
begin
s:=IntToStr(i);
a:=StrToInt(s[1])+StrToInt(s[2])+StrToInt(s[3]);
if ((a mod 4) = 0) then
writeln(s);
end;
end.
вторая задача аналогично гуглится) вообще, не слабо для 5 класса)