 
Вопрос задан 21.06.2019 в 08:41.
Предмет Информатика.
Спрашивает Гаевец Сергей.
Нужно написать программу Шахматная доска состоит из n х m клеток, покрашенных в черный и белый цвет
в«шахматном» порядке. При этом клетка в левом нижнем углу доски покрашена в черный цвет определите, сколько всего на доске черных клето. Программа получает на вход два числа n и m, залисанных в отдельных строю Bсе натуральные, не превосходящие 30 000 числа Программа должна вывести одно целое число количество черных клеток на доске. 0
        0
         0
        0
    Ответы на вопрос
 
        Отвечает Батенькова Даша.
                
     Рассмотрим случай, когда число клеток по вертикали n четное. В этом случае каждая пара горизонталей доски содержит ровно m клеток (m - число клеток доски по горизонтали). Тогда общее число черных клеток равно m*n/2.
При нечетном n к рассмотренным горизонтальным строкам добавляется еще одна - нечетная, конфигурация которой совпадает с первой (нечетной) горизонталью.
Если клетка в левом нижнем углу первой горизонтали черная, то количество черных клеток в ней можно определить как сумму результата целочисленного деления количества клеток по горизонтали на два и остатка от этого деления. В результате приходим к следующей формуле:

Ниже представлен текст программы на языке Pascal.ABC.NET
var
m, n: integer;
begin
Write('Введите количество горизонталей на доске: ');
Readln(n);
Write('Введите количество вертикалей на доске: ');
Readln(m);
if (n mod 2) = 0 then Writeln('Черных клеток на доске- ', m * n / 2)
else Writeln('Черных клеток на доске- ', m * (n-1) / 2 + (m div 2) + (m mod 2))
end.
Тестовое решение:
Введите количество горизонталей на доске: 8
Введите количество вертикалей на доске: 7
Черных клеток на доске- 28
                                        При нечетном n к рассмотренным горизонтальным строкам добавляется еще одна - нечетная, конфигурация которой совпадает с первой (нечетной) горизонталью.
Если клетка в левом нижнем углу первой горизонтали черная, то количество черных клеток в ней можно определить как сумму результата целочисленного деления количества клеток по горизонтали на два и остатка от этого деления. В результате приходим к следующей формуле:
Ниже представлен текст программы на языке Pascal.ABC.NET
var
m, n: integer;
begin
Write('Введите количество горизонталей на доске: ');
Readln(n);
Write('Введите количество вертикалей на доске: ');
Readln(m);
if (n mod 2) = 0 then Writeln('Черных клеток на доске- ', m * n / 2)
else Writeln('Черных клеток на доске- ', m * (n-1) / 2 + (m div 2) + (m mod 2))
end.
Тестовое решение:
Введите количество горизонталей на доске: 8
Введите количество вертикалей на доске: 7
Черных клеток на доске- 28
 0
                    0
                     0
                    0
                Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
	- 
			Математика 
- 
			Литература 
- 
			Алгебра 
- 
			Русский язык 
- 
			Геометрия 
- 
			Английский язык 
- 
			Химия 
- 
			Физика 
- 
			Биология 
- 
			Другие предметы 
- 
			История 
- 
			Обществознание 
- 
			Окружающий мир 
- 
			География 
- 
			Українська мова 
- 
			Информатика 
- 
			Українська література 
- 
			Қазақ тiлi 
- 
			Экономика 
- 
			Музыка 
- 
			Право 
- 
			Беларуская мова 
- 
			Французский язык 
- 
			Немецкий язык 
- 
			МХК 
- 
			ОБЖ 
- 
			Психология 
- 
			Физкультура и спорт 
- 
			Астрономия 
- 
			Кыргыз тили 
- 
			Оʻzbek tili 
 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			