Даша12Няшка
20.02.2023 06:45

Уартёма оригинальные друзья, каждый из которых любит есть конфеты немного по-своему.

например, аркадий любит вынуть из коробки все конфеты, вид которых — четное число, а затем съесть из них каждую вторую, а оставшиеся — положить на свободные места слева направо.
внутри класса в массиве эта операция выглядит так:
(7, 1, 2, 5, 8, 10, 4, 3, 17) → (7, 1, 0, 5, 0, 0, 0, 3, 17) → (7, 1, 2, 5, 10, 0, 0, 3, 17).

алиса, в отличие от аркадия, любит съесть сначала первую половину конфет (округленную в меньшую сторону), а затем, раскаиваясь о содеянном, расставить оставшиеся конфеты в том же порядке так, чтобы между ними было хотя бы одно свободное место. при этом первая оставшаяся конфета должна оказаться на первом месте в коробке.
внутри класса в массиве эта операция выглядит так:
(7, 1, 2, 5, 8, 10, 4, 3, 17) → (0, 0, 0, 0, 8, 10, 4, 3, 17) → (8, 0, 10, 0, 4, 0, 3, 0, 17).
ещё один пример:
(7, 1, 2, 5, 8, 10, 4, 3) → (0, 0, 0, 0, 8, 10, 4, 3) → (8, 0, 10, 0, 4, 0, 3, 0).

артёму по заданному набору конфет в коробке определить, какой состав конфет в коробках будет после того, как его друзья съедят все конфеты, которые их интересуют. предполагается, что и аркадию и алисе артём подарил одинаковые коробки конфет.

для решения этой вы должны проделать шаги, указанные ниже.

добавить в класс candybox публичный метод int который будет возвращать размер коробки конфет.

добавить в класс candybox публичный метод int& at(int index), который будет возвращать конфету, которая находится на i-ой позиции. обратите внимание, что за счёт того, что метод возвращает ссылку, вы можете менять содержимое коробки. например, вот так:
candybox b;
b.read();
b.at(3) = 7;
добавить в класс candybox конструктор копирования.

добавить вне класса функцию candybox arcady_process(candybox b), которая эмулирует поведение аркадия, если ему подарить коробку конфет b, и возвращает новый объект — коробку, из которой поел конфет аркадий.

добавить вне класса функцию candybox alice_process(candybox b), которая эмулирует поведение алисы, если ей подарить коробку конфет b, и возвращает новый объект — коробку, из которой поела конфет алиса.

формат входных данных
в первой строке вводится целое положительное число m — количество конфет.

в следующей строке вводятся m неотрицательных чисел, не превышающих 109 — виды конфет.

формат выходных данных
требуется вывести две строки с числами — состояние коробок после аркадия и алисы.

входные данные
9
7 1 2 5 8 10 4 3 17
выходные данные
7 1 2 5 10 0 0 3 17
8 0 10 0 4 0 3 0 17
входные данные
7
8 4 6 4 8 8 1
выходные данные
8 6 8 0 0 0 1
4 0 8 0 8 0 1

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
gilkin01
25.01.2021 18:08

1)

Program Pr1;
uses crt;
var stroka:string;
a:integer;
Begin
clrscr;
writeln('Vvedite chislo');
readln(stroka);
a:=length(stroka);
a:=Trunc(a/2)+1;
writeln(a);
end.

2)

Program Pr1;
uses crt;
var stroka:string;
a,i:integer;
Begin
clrscr;
writeln('Vvedite stroku');
readln(stroka);
a:=0;
for i:=1 to length(stroka) do if stroka[i]=',' then a:=a+1;
writeln(a);
end.

3)

Program Pr1;
uses crt;
var stroka:string;
a,i:integer;
c:char;
Begin
clrscr;
writeln('Vvedite stroku');
readln(stroka);
writeln('Vvedite simvol');
readln(c);
a:=0;
for i:=1 to length(stroka) do if stroka[i]=c then break
else a:=a+1;
writeln(a);
end.

4)

Program Pr1;
uses crt;
var stroka:string;
procedure word9(strokk:string);
var i:integer;
tmp:string;
begin
for i:=1 to length(stroka) do if (stroka[i]=' ') or (stroka[i]='.') then begin
writeln(tmp,' ',length(tmp));
tmp:='';
end
else tmp:=tmp+stroka[i];
end;
Begin
clrscr;
writeln('Vvedite predlogenie');
readln(stroka);
word9(stroka);
end.

6)

Program Pr1;
uses crt;
var stroka:string;
a,i:integer;
Begin
clrscr;
a:=0;
readln(stroka);
for i:=1 to length(stroka) do if stroka[i] in ['A'..'z'] then a:=a+1;
writeln(a);
end.

7)

Program Pr1;
uses crt;
var stroka:string;
procedure word8(strokk:string);
var i:integer;
begin
for i:=1 to length(strokk) do if strokk[i]=' ' then strokk[i]:='_';
writeln(strokk);
end;
Begin
clrscr;
readln(stroka);
word8(stroka);
end.

8)

Program Pr1;
uses crt;
var stroka,tmp:string;
i,a:integer;
Begin
clrscr;
readln(stroka);
tmp:='';
a:=0;
for i:=1 to length(stroka) do if (stroka[i]=' ') or (stroka[i]='.') then begin
a:=a+1;
writeln(tmp,' ',a);
tmp:='';
end
else tmp:=tmp+stroka[i];
end.

9)

Program Pr1;
uses crt;
var stroka:string;
procedure word7(strokk:string);
var c:char;
i,a:integer;
begin
a:=0;
for i:=1 to length(strokk) div 2 do begin
c:=strokk[i];
strokk[i]:=strokk[length(strokk)-a];
strokk[length(strokk)-a]:=c;
a:=a+1;
end;
writeln();
for i:=1 to length(strokk) do write(strokk[i]);
end;
begin
clrscr;
readln(stroka);
word7(stroka);
end.

10)

Program Pr1;
uses crt;
var stroka,tmp:string;
i,b:integer;
begin
clrscr;
readln(stroka);
stroka[1]:='*';
for i:=1 to length(stroka) do if stroka[i]=' ' then for b:=i to length(stroka) do if stroka[b] in ['A'..'я'] then begin
stroka[b]:='*';
break;
end;

writeln(stroka);
end.

 11)

Program Pr1;
uses crt;
var stroka:string;
i,b:integer;
begin
clrscr;
readln(stroka);
b:=0;
for i:=1 to length(stroka) do if (stroka[i]='А') or (stroka[i]='а') or (stroka[i]='О') or (stroka[i]='о') then b:=b+1;
writeln(b);
end.

0,0(0 оценок)
Ответ:
foma199999
15.09.2020 17:22

                       Антон, Борис, Давид, Григорий      Ольга ,Мария, Светлана, Екатерина                                                                                 

Норильск        +           -           -                -                   -           -                 -                    + 

Москва            -            -           -               +                -           +                -                     -    

Ростов             -           -            +               -                 -           -                +                   -         

Пятигорск      -            +           -                -                  +          -                -                      -

  Антон  Екатерина  Норильск

  Борис Ольга   Пятигорск

  Давид  Светлана  Ростов

  Григорий  Мария  Москва

 

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота