Поделитесь своими знаниями, ответьте на вопрос:
Забор состоит из N одинаковых вертикальных досок. Некоторые из досок сгнили и нуждаются в замене, для каждой доски известно, нужно ли её заменить. Для ремонта забора можно использовать продающиеся в магазине щиты, которые бывают L разных видов: шириной в 1 доску, в 2 доски, ..., в L досок. Щит нельзя разрезать на части, то есть одним щитом можно заменить не более любых L подряд идущих досок. При этом можно менять не только сгнившие доски, но и хорошие. Оказалось, что все щиты стоят одинаково, независимо от размера щита. Определите, какое наименьшее число щитов необходимо приобрести, чтобы починить весь забор. Входные данные Первая строка входных данных содержит целое число L (L > 0) – максимальный размер щита. Во второй строке входных данных записано целое число N (N > 0) – количество досок в заборе. Следующие N строк содержат по одному числу, равному 0 или 1. Число 1 обозначает, что соответствующая доска в заборе нуждается в замене, число 0 – что доска может быть сохранена. Выходные данные Программа должна вывести одно целое число – минимальное число щитов, которое необходимо приобрести для ремонта всего забора.
PROGRAM Privet;
VAR
x:real;
BEGIN
writeln('Который час?'); read(x);
if x > 24 then
writeln('Введенное число не является временем ' )
else
begin
if (x>=8) and (x<12) then writeln('Доброе утро!');
if (x>=12) and (x<17) then writeln('Добрый день!');
if(x>=17) and (x<23) then writeln('Добрый вечер!');
if(x>=23) or (x<8) then writeln('Доброй ночи!');
end;
end.
//вторая программа
var
x,x1,x2,y,y1,y2:real;
begin
write('x = '); readln(x);
write('y = '); readln(y);
write('x1 = '); readln(x1);
write('y1 = '); readln(y1);
write('x2 = '); readln(x2);
write('y2 = '); readln(y2);
if ((x - x1) * (x - x2) < 0) and ((y - y1) * (y - y2) < 0) then
writeln('Точка принадлежит заданной области')
else
writeln('Точка не принадлежит заданной области');
end.