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

Программирование на языке Pascal

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

Какой стандартной функции или процедуре обработки строк эквивалентен следующий программный отрывок?
{s1,s2: string; i,j,t1,t2: byte}i:=0;res:= '';	t1:= byte(s1[0]);t2:= byte(s2[0]);if i > t2 then i:= t2+1;for j:= 1 to i-1 do res:= res + s2[j];for j:= 1 to t1 do res:= res + s1[j];for j:= i to t2 do res:= res + s2[j];

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

Варианты ответа
delete(s,i,k)
insert(s1,s2,i)(Верный ответ)
copy(s,i,k)
Похожие вопросы
Какой стандартной функции или процедуре обработки строк эквивалентен следующий программный отрывок?
{s: string; i,k,t: byte}res:= ''; 	t:= byte(s[0]);if k+i > t+1 then k:= t-i;if i <= t  then for j:= i to i+k do res:= res + s[j];
Какой стандартной функции или процедуре обработки строк эквивалентен следующий программный отрывок?
{s: string; i,k,t: byte}res:= ''; t:= length(s);if i > t then i:= t+1;for j:= 1 to i-1 do res:= res + s[j];for j:= i+k-1 to t do res:= res + s[j];
Какое значение получит переменная a после выполнения такой программы?
var a: byte;proc p1(var k: byte);proc p2(t: byte); begin t:= t*2 end;var a: byte; begin a:= 1;       k:= 5;       p2(k); end;begin a:= 10; p1(a);end.
Какое значение получит переменная a после выполнения такой программы?
var a: byte;proc p1(var t: byte); begin t:= t*2 end;proc p2(var k: byte);var a: byte; begin a:= 1;       k:= 5;       p1(k); end;begin a:= 10; p2(a);end.
Какое значение получит переменная a после выполнения такой программы?
var a: byte;proc p1(k: byte);proc p2(var t: byte); begin t:= t*2 end;var a: byte; begin a:= 1;       k:= 5;       p2(a); end;begin a:= 10; p1(a);end.
Какие переменные будут существовать во время выполнения подпрограммы p2?
program prog;var a: byte;procedure p1; var a: byte; begin  ... end;procedure p2; function f: boolean;  var a: byte;  begin   ...  end; var a: byte; begin  ... end;
Какие переменные будут существовать во время выполнения подпрограммы f?
program prog;var a: byte;procedure p1; var a: byte; begin  ... end;procedure p2; function f: boolean;  var a: byte;  begin   ...  end; var a: byte; begin  ... end;
Какие переменные будут существовать во время выполнения подпрограммы p1?
program prog;var a: byte;procedure p1; function f: boolean;  var a: byte;  begin   ...  end; var a: byte; begin  ... end;procedure p2;var a: byte; begin  ... end;
Имеется набор натуральных чисел, быть может, с повторениями. Необходимо разделить его на два поднабора так, чтобы разность сумм весов была минимальной. Эта задача решается рекурсивным методом полного перебора с отсечением (см. ниже). На вход были поданы числа 45 48 32 12 12 15 46 2 2 3 15. При какой глубине стека контекстов произойдет завершение работы программы (обращение к завершающей процедуре out())?
{массив а хранит веса всех предметов, в порядке их ввода, half - "большая" половина суммы всех весов, dif - отклонение текущей найденной суммы от half}procedure rec(k: byte; sum: longint; var dif: longint);var i: byte;begin if sum+a[k]<=half        then for i:= k+1 to n do rec(i,sum+a[k],dif)        else if half-sum<dif               then begin                     dif:= half-sum;                    if dif<2 then out(dif){печать и завершение}                   endend;
Имеется набор натуральных чисел, быть может, с повторениями. Необходимо разделить его на два поднабора так, чтобы разность сумм весов была минимальной. Эта задача решается рекурсивным методом полного перебора с отсечением (см. ниже). На вход были поданы числа 36 72 45 2 38 96 15 2 2. При какой глубине стека контекстов произойдет завершение работы программы (обращение к завершающей процедуре out())?
{массив а хранит веса всех предметов, в порядке их ввода, half - "большая" половина суммы всех весов, dif - отклонение текущей найденной суммы от half}procedure rec(k: byte; sum: longint; var dif: longint);var i: byte;begin if sum+a[k]<=half        then for i:= k+1 to n do rec(i,sum+a[k],dif)        else if half-sum<dif               then begin                     dif:= half-sum;                    if dif<2 then out(dif){печать и завершение}                   endend;