Ну, условие крайне странное, я понимаю так, что числовой промежуток дан в 10тичной системе счисления, и каждое целое число на промежутке необходимо перевести в 16ричное. Если промежуток [28; 30], то это означает что туда входят такие целые числа как 28, 29, 30 (если промежуток обозначается квадратными скобками '[' и ']', то это включая числа что указаны его границами, если же круглыми '(' и ')', то не включая их.
Перейдем к переводу десятичных чисел в шестнадцатиричную систему счислени. Для этого делем число на 16, паралельно записывая его остаток и продолжая до тех пор, пока оно не станет меньше 16. 28 / 16 = 1; остаток 12
Тут ничего сложного, пользуемся табличкой переводов, смотрим, 12 из десятичной в 16ричной это буква C, а 1 оставляем как есть. Теперь запишим полученные числа: 1C - Это 28 в 16ричной
Точно так же переводим из 10тичной в 16ричную 29: 29/16 = 1; остаток 13 Получается 1D
Ну и как не трудно догадаться, 30 в 16ричной будет 1E. Но для наглядности проведем расчёты: 30/16=1; остаток 14
Постскриптум: — Задание сформулированно крайне не понятно и вот почему: Нижним индексом, по обыкновению, указывают систему счисления текущего числа, но тогда нет никакого смысла переводить в 16ричную систему из 16ричной. — Другой вариант, что 28 и 30 это числа указанные не в 16ричной, но они могут быть в любой системе счисления где больше 8 цифр :)
Если предерживаться первого предположения, то нужно просто записать все цифры 16ричной системы счисления от 28 до 30 включительно, тогда это будет: 28, 29, 30 Что вообще смысла не имеет, так что не претендую на идеально правильное решение, но это единственное адекватное, что пришло мне в голову. Может этот идеотизм как-то и по другому закручен :D
1) var n,i,p:longint;a:array[1..100]of longint; begin read(n);p:=1; for i:=1 to n do read(a[i]); for i:=1 to n do if a[i] mod 3=0 then p:=p*a[i]; writeln(p); end. 2) var n,i,s,p:longint;a:array[1..100]of longint; begin read(n); p:=1;s:=0; for i:=1 to n do read(a[i]); for i:=1 to n do if a[i]>0 then s:=s+a[i]; for i:=1 to n do if a[i]<0 then p:=p*a[i]; if p>s then writeln('proizvedenie') else if p<s then writeln('summa') else writeln('ravni'); end. 3) var n,f,i,o:longint;a:array[1..100]of longint; begin read(n);f:=0; for i:=1 to n do read(a[i]); for i:=n downto 1 do begin if a[i]<0 then f:=f+1; if f=2 then begin o:=a[i];break;end; end; writeln(o); end.
Укажу часть решения (на все, увы, нет времени, работать надо - и как бы вы меня не уговаривали, все же сделаю это на паскале, но если нужно будет - исправлю под плюсы):
1) Чтобы проверить, является ли треугольник равносторонним, нужно узнать, равны ли все его стороны: if (a = b) and (b = c) then writeln('TRUE') else writeln('FALSE');
2) У равнобедренного треугольника должны быть равны две стороны: if (a =b) or (b = c) or (a = c) then writeln('TRUE') else writeln('FALSE');
3) Для существования треугольника сумма любых его двух сторон должна быть больше третьей: if (a + b > c) and (a + c > b) and (b + c > a) then writeln('TRUE') else writeln('FALSE');
4) Тут всё просто, первая четверть это неотрицательные значения для осей абсцисс и ординат: if (a >= 0) and (b >= 0) then writeln('TRUE') else writeln('FALSE');
С последним разберешься сам, там тоже несложно. В единую программу, надеюсь, сможет восьмиклассник собрать части кода?
Если промежуток [28; 30], то это означает что туда входят такие целые числа как 28, 29, 30 (если промежуток обозначается квадратными скобками '[' и ']', то это включая числа что указаны его границами, если же круглыми '(' и ')', то не включая их.
Перейдем к переводу десятичных чисел в шестнадцатиричную систему счислени. Для этого делем число на 16, паралельно записывая его остаток и продолжая до тех пор, пока оно не станет меньше 16.
28 / 16 = 1; остаток 12
Тут ничего сложного, пользуемся табличкой переводов, смотрим, 12 из десятичной в 16ричной это буква C, а 1 оставляем как есть.
Теперь запишим полученные числа:
1C - Это 28 в 16ричной
Точно так же переводим из 10тичной в 16ричную 29:
29/16 = 1; остаток 13
Получается 1D
Ну и как не трудно догадаться, 30 в 16ричной будет 1E. Но для наглядности проведем расчёты:
30/16=1; остаток 14
Постскриптум:
— Задание сформулированно крайне не понятно и вот почему:
Нижним индексом, по обыкновению, указывают систему счисления текущего числа, но тогда нет никакого смысла переводить в 16ричную систему из 16ричной.
— Другой вариант, что 28 и 30 это числа указанные не в 16ричной, но они могут быть в любой системе счисления где больше 8 цифр :)
Если предерживаться первого предположения, то нужно просто записать все цифры 16ричной системы счисления от 28 до 30 включительно, тогда это будет:
28, 29, 30
Что вообще смысла не имеет, так что не претендую на идеально правильное решение, но это единственное адекватное, что пришло мне в голову. Может этот идеотизм как-то и по другому закручен :D