Ребят помогите ПОЖАЛУЙСТА! не могу решить задачу по информатике. Найти все трехзначные числа, которые при увеличении на 1 делятся на 2, при увеличении на 2 делятся на 3, при увеличении на 3 делятся на 4, при увеличении на 4 делятся на 5. Буду очень благодарна!!!!

1

Ответы и объяснения

  • Участник Знаний
2013-04-18T14:34:17+04:00

Если не математическим, а программным образом, то примерно так

 

A2(), А3(), А4(),А5()   это массивы, в которых сохраним эти числа

ц2=0;

ц3=0;

ц4=0; 

ц5=0;  // это их индексы

Для ц=100 до 999 Цикл

      Если Остаток(ц+1,2)=0 Тогда

                   ц2=ц2+1;

                   А2(ц2)=ц;

      КонецЕсли;

      Если Остаток(ц+2,3)=0 Тогда

                   ц3=ц3+1;

                   А3(ц3)=ц;

      КонецЕсли;

 

      Если Остаток(ц+3,4)=0 Тогда

                   ц4=ц4+1;

                   А4(ц4)=ц;

      КонецЕсли;

 

      Если Остаток(ц+4,5)=0 Тогда

                   ц5=ц5+1;

                   А5(ц5)=ц;

      КонецЕсли;

 

КонецЦикла;

 

// Теперь их напечатаем

Сообщить("При увеличении на 1 делятся на 2");

Для ц=1 по ц2 Цикл

   Сообщить(А2(ц));

КонецЦикла;

 

Сообщить("При увеличении на 2 делятся на 3");

Для ц=1 по ц3 Цикл

   Сообщить(А3(ц));

КонецЦикла;

 

Сообщить("При увеличении на 3 делятся на 4");

Для ц=1 по ц4 Цикл

   Сообщить(А4(ц));

КонецЦикла;

 

Сообщить("При увеличении на 3 делятся на 4");

Для ц=1 по ц4 Цикл

   Сообщить(А4(ц));

КонецЦикла;

   

Сообщить("При увеличении на 4 делятся на 5");

Для ц=1 по ц5 Цикл

   Сообщить(А5(ц));

КонецЦикла;

 

 

Ну вот, где-то так.

 

Но если математически, то нужно по-другому, и информатика здесь совершенно ни при чём, скорее теория чисел.

 

 Да, в условии не сказано, что ОДНОВРЕМЕННО, поэтому я решал задачу "не одновременно"

 

Если одновременно, то ещё проще, всего одно условие со сложным условием и можно без массивов.

 

Ну и ещё: использована функция Остаток(), она есть в любом языке. Если нет(??!), то легко пишется вручную.