Program P1; var l,r,a,b:real; begin readln(l,a,b); r:=l/(2*pi); if a*a+b*b<r*r then writeln('YES') else writeln('NO'); end.
Пример: 20 3 4 NO
iv1as2
06.06.2021
Я не стану указывать эпитетов к своему коду, пусть он сам скажет за себя. Алгоритм такой: просматриваем массив от конца к началу. И завершаем работу, как только встретим отрицательный элемент. А если так и не встретим до начала массива, значит таких элементов в массиве нет.
const n=20; { размер массива } var a:array[1..n] of integer; i:integer; found:boolean; begin Randomize; Writeln('Элементы массива'); for i:=1 to n do begin a[i]:=Random(21)-10; { случайное число на интервале [-10;10] } Write(a[i]:4) end; Writeln; { собственно задание } i:=n; repeat found:=(a[i]<0); Dec(i) until (i=0) or found; if found then Writeln('Номер элемента равен ',i+1) else Writeln('Отрицательных элементов нет') end.
Вот код простой и понятный В строке №7 мы записали переменную для хранения индекса отрицательного элемента. В строке №19 мы задаем условие, при котором перебираются все 10 сгенерированных чисел и среди них ищется отрицательный, и если отрицательное число находится, то его индекс (номер) заносится в переменную K (строка №21). В строке №23 записывается условие: если переменная «K» больше 0 (т.е. есть отрицательные элементы), то на экран выводится сообщение (строка №24). В обратном случае (если нет отрицательных элементов, и «K» так и останется равным 0), выведется сообщение (строка №26)
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Выдать на экран сообщение, попадет ли в круг с длиной окружности l(см) точка с координатами (a, b центр круга расположен в начале координат.
var l,r,a,b:real;
begin
readln(l,a,b);
r:=l/(2*pi);
if a*a+b*b<r*r then writeln('YES')
else writeln('NO');
end.
Пример:
20 3 4
NO