База ответов ИНТУИТ

Решение олимпиадных задач по информатике

<<- Назад к вопросам

В результате работы программы, фрагмент которой приведен ниже, идет проверка правильности расстановок скобок в арифметическом выражении. Что будет результатом работы программы, если в данном выражении (например: stroka:='(((5+y)*(x-4)))') избыточное количество скобок:

… n:=length (stroka); s:=0; for i:=1 to n do  begin a[i]:=copy(stroka, i, 1); flag[i]:=0; end; for i:=1 to n do  begin if a[i]="(" then flag [i]:=1; if a[i]=")" then flag [i]:=-1; end; for i:=1 to n do  begin s:=s+flag [i]; if s<0 then x:=1; end; if (s=0) and (x=0) then writeln ('верно')  else writeln ('неверно');…

(Отметьте один правильный вариант ответа.)

Варианты ответа
Похожие вопросы

В результате работы программы, фрагмент которой приведен ниже, идет проверка правильности расстановок скобок в арифметическом выражении. Что будет результатом работы программы, если в данном выражении (например: stroka:='(((5+y)*(x-4)))') избыточное количество скобок:

… n:=length (stroka); s:=0; for i:=1 to n do  begin a[i]:=copy(stroka, i, 1); flag[i]:=0; end; for i:=1 to n do  begin if a[i]="(" then flag [i]:=1; if a[i]=")" then flag [i]:=-1; end; for i:=1 to n do  begin s:=s+flag [i]; if s<0 then x:=1; end; if (s=0) and (x=0) then writeln ('верно') else writeln ('неверно');…

Что выведется на экран в результате работы программы, фрагмент которой приведен ниже:

… stroka:='(5+y)*(x-4)'; n:=length (stroka); s:=0; for i:=1 to n do  begin a[i]:=copy(stroka, i, 1); flag[i]:=0; end; for i:=1 to n do  begin  if a[i]="(" then flag [i]:=1;  if a[i]=")" then flag [i]:=-1;  end; for i:=1 to n do  begin  s:=s+flag [i];  if s<0 then x:=1;  end; if (s=0) and (x=0) then writeln ('верно') else writeln ('неверно');…

В результате выполнения программы на Паскале, фрагмент которой приведен ниже, на экран выведутся:

…readln (n);for i:=1 to n do a[i]:=i;for i:=2 to n div 2 do  if flag[i]=0 then  for j:=i+1 to n do   if (a[j] mod a[i]=0) then flag[j]:=1;for i:=2 to n do if flag[i]=0 then writeln (a[i])…

В результате выполнения программы на Паскале, фрагмент которой приведен ниже, массив Flag будет содержать:

…for i:=1 to 10 do begin  a[i]:=i;  flag[i]:=0;endfor i:=2 to 10 div 2 do  if flag[i]=0 then  for j:=i+1 to 10 do   if (a[j] mod a[i]=0) then flag[j]:=1;…

Ниже приведен фрагмент программы, реализующий алгоритм решения задачи: "В картинной галерее работают сторожа. Для каждого сторожа известно время прихода на работу и время ухода. Определить, всегда ли галерея охраняется":

…//заполнение массива a (временем прихода и ухода сторожа), массива flag ("1" и "-1")…//сортировка массива а с перестановкой элементов массива flag (в соответствии с перестанавливаемыми элементами массива а) …for i=1 to 2*n do begin s:=s+flag [i]; if s=0 then k:=k+1; end;if k=1 then writeln ('галерея всегда охранялась')else writeln ('галерея оставалась без охраны', k-1,'раз');

Каков будет результат работы программы, если время ухода одного из сторожей совпадает с временем прихода его сменщика?

В результате выполнения программы на Паскале, фрагмент которой приведен ниже, массив Flag будет содержать:
…n:=5;for i:=1 to n do a[i]:=i;for i:=2 to n div 2 do  if flag[i]=0 then  for j:=i+1 to n do   if (a[j] mod a[i]=0) then flag[j]:=1;…

В результате выполнения программы на Паскале, фрагмент которой приведен ниже, массив Flag будет содержать:

…readln (n);for i:=1 to n do a[i]:=i;for i:=2 to n div 2 do  if flag[i]=0 then  for j:=i+1 to n do   if (a[j] mod a[i]=0) then flag[j]:=1;…

Приведенная программа на Паскале реализует алгоритм …

const 	m=…;var 	a, rez: array [1..m] of byte; i, n, x, k: integer; stroka: string;begin readln (stroka); readln (x); n:= length (stroka); for i:=1 to n do val (copy(stroka, i, 1), a[i], k); for i:=1 to n do rez[i]:= a[i] * x; for i:=n downto 2 do  begin  rez[i-1]:= rez[i-1]+rez[i] div 10;  rez[i]:= rez[i] mod 10;  end  for i:=1 to n do write (rez[i]);end.

Ниже приведен фрагмент программы, реализующий алгоритм решения задачи: "В картинной галерее работают сторожа. Для каждого сторожа известно время прихода на работу и время ухода. Определить, всегда ли галерея охраняется":

…//заполнение массива a (временем прихода и ухода сторожа), массива flag ("1" и "-1")…//сортировка массива а с перестановкой элементов массива flag (в соответствии с перестанавливаемыми элементами массива а) …for i=1 to 2*n do begin s:=s+flag [i]; if s=0 then k:=k+1; end;writeln ('количество случаев неохраняемости галереи')writeln (k-1);…

Какое количество случаев неохраняемости галереи выдаст программа, если время ухода одного из сторожей совпадает с временем прихода его сменщика?

Приведенная программа на Паскале реализует алгоритм поразрядного умножения числа на число от 0 до 9, вводимых с клавиатуры приведена с ошибкой. Найдите ее.

const 	m=…;var a, rez: array [1..m] of byte; i, n, x, k: integer; stroka: string;begin readln (stroka); readln (x); n:= length (stroka); for i:=1 to n do val (copy(stroka, i, 1), a[i], k); for i:=1 to n do rez[i]:= a[i] * x; for i:=n downto 2 do  begin  rez[i-1]:= rez[i-1]+rez[i] mod 10;  rez[i]:= rez[i] div 10;  end for i:=1 to n do write (rez[i]);end.