Алгоритм выигрыша в этой игре очень простой: каждый раз надо забирать из кучки M+1 камешек. Следовательно, первым ходом надо забрать количество камешков, равное остатку от целочисленного деления N на М+1, а затем в каждый последующий ход забирать столько камешков, чтобы оставшееся их число было кратно M+1.
Ниже приведено решение на языке Borland Pascal 7.01
uses Crt;
var
N,M,k:integer;
begin
ClrScr;
Write('N,M='); Read(N,M);
k:=N mod (M+1);
Writeln(k);
ReadKey
end.
Тестовое решение:
N,M=7 4
2
Using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
<span>static void Main(<span>string[] args</span>)
</span><span>{
</span>Console.BackgroundColor = ConsoleColor.Black;
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine();
Console.WriteLine("Hello, World!");
// Ожидание нажатия клавиши Enter перед завершением работы<span>
Console.ReadLine();
}
}
}
</span>
Данная программа откроет консоль и будет выводить текст "Hello, World". Текст можно изменить, а комментарий удалить.
2
Т.к. он вперед на 3 красит и назад на 3 красит и повторяет этот цикл 6 раз. по одним и тем же клеткам
128 возможных вариантов.
Воспользуемся формулой N=2^i
i=7бит
// Блок схема в приложении.
const
max = 100;
var
sum:word;
index:byte;
BEGIN
sum:=0;
for index:=1 to max do
if not odd(index) then
sum:=sum+index;
writeln('Сумма четных чисел от 1 до ', max ,' = ', sum);
END.