Объяснение:
#include <iostream>
using namespace std;
int main()
{
int N, counter = 1, max_counter=1,post;
cin >> N;//всего матчей
cin >> post;// ввод первого числа последовательности
for (int i = 0; i < N-1; i++) {
int a;
cin >> a;// ввод остальных N-1 чисел последовательности
if (a == post && a == 1) {
counter++;
if (counter > max_counter)
max_counter = counter;
}
else
{
counter = 1;
}
post = a;
}
cout << max_counter;
return 0;
}
Как и в математике. Сначала выполняем операции в скобках, потом вне.
a=10 b=20
a) rez:= (a=10) or (b>10) = TRUE or TRUE = TRUE
б) rez:= (a>5) and (b>5) = TRUE and TRUE = TRUE
в) rez:= (not (a<15)) or (b>20) = (not TRUE) or FALSE = FALSE or FALSE = FALSE
Программа, так полагаю, на паскале. Вот примерный код
var
a, b :integer;
rez : boolean;
begin
a:=10;
b:=20;
rez:=(a=10) or (b>10);
writeln(rez);
end.
Вместо строчки rez:=(a=10) or (b>10); подставляешь то, что тебе нужно, и будет счастье.
Задания жесткие, кину одну функцию, помню давненько её находил для перевода из 16 в 10, могут быть ошибки не проверял
function HEX2DEC(HEX: string): LONGINT;
function Digt(Ch: CHAR): BYTE;
const
HEXDigts: string[16] = '0123456789ABCDEF';
var
I: BYTE;
N: BYTE;
begin
N := 0;
for I := 1 to Length(HEXDigts) do
if Ch = HEXDigts[I] then
N := I - 1;
Digt := N;
end;
const
HEXSet: set of CHAR = ['0'..'9', 'A'..'F'];
var
J: LONGINT;
Error: BOOLEAN;
DEC: LONGINT;
begin
DEC := 0;
Error := False;
for J := 1 to Length(HEX) do
begin
if not (UpCase(HEX[J]) in HEXSet) then
Error := True;
DEC := DEC + Digt(UpCase(HEX[J])) shl ((Length(HEX) - J) * 4);
{ 16^N = 2^(N * 4) }
{ N SHL ((Length(HEX) - J) * 4) = N * 16^(Length(HEX) - J) }
end;
if Error then
HEX2DEC := 0
else
HEX2DEC := DEC;
end;