var a, b: integer; begin readln(a, b); writeln(System.Math.Sign(a) = System.Math.Sign(b) ? 'Да' : 'Нет'); end.
Или ̶п̶р̶и̶м̶и̶т̶и̶в̶н̶е̶е̶ проще: var a, b: integer; begin readln(a, b); if (a > 0) then a := 1; if (a = 0) then a := 0; if (a < 0) then a := -1; if (b > 0) then b := 1; if (b = 0) then b := 0; if (b < 0) then b := -1; if (a = b) then writeln('Yes') else writeln('No'); end.
Немного ̶у̶п̶р̶о̶̶щ̶̶ё̶н̶н̶ы̶й̶ оптимизированный вариант: var a, b: integer; begin readln(a, b); if (a > 0) then a := 1 else if (a = 0) then a := 0 else a := -1; if (b > 0) then b := 1 else if (b = 0) then b := 0 else b := -1; if (a = b) then writeln('Yes') else writeln('No'); end.
// PascalABC.NET 3.1, сборка 1267 от 10.07.2016 const k=4; //количество классов u=18; // количество учеников в классе var a:array[1..k,1..u] of real; // массив с ростом n:array[1..k] of integer; // массив результатов i,j:integer; // счетчики циклов m:real; // средний рост ученика в классе begin for i:=1 to k do begin Writeln('Введите рост учеников ',i,'-го из классов'); m:=0; for j:=1 to u do begin Read(a[i,j]); m:=m+a[i,j] end; m:=m/u; n[i]:=0; for j:=1 to u do if abs(a[i,j]-m)>5.0 then Inc(n[i]); end; Writeln('Количество учеников с ростом, отличающимся от среднего'); Writeln('по каждому из классов более, чем на 5'); for i:=1 to k do Write(n[i]:5) end.
Пример решения для упрощенного случая, когда в классе на 18, а 5 учеников (чтобы меньше набирать) Введите рост учеников 1-го из классов 168 174 181 172 175 Введите рост учеников 2-го из классов 162 173 170 158 183 Введите рост учеников 3-го из классов 157 185 159 168 167 Введите рост учеников 4-го из классов 170 173 176 168 171 Количество учеников с ростом, отличающимся от среднего по каждому из классов более, чем на 5 2 3 3 0
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку