1) Делим 26 бриллиантов на 2 групы по 13 бриллиантов и взвешиваем на весах. Та группа, которая тяжелее, включает в себя настоящий бриллиант.
Эту группу делим на две по 6, 1 бриллиант откладываем, и взвешиваем. Если эти группы по 6 равны по массе, то этот отложенный 1 бриллиант и есть настоящий. Если же нет, то берем группу с наибольшим весом.
Делим эту группу на две по 3 бриллианта в каждой, взвешиваем. Та группа которая тяжелее, содержит настоящий риллиант. Берем ее.
Берем из этой группы 2 бриллианта и взвешиваем их. Если они равны по массе, но настоящий бриллиант 3. Если же нет, то настоящий бриллиант тот, что тяжелее.
2) Эти 4 детали делим на группу по 2 детали в каждой. Работаем с первой группой.
Эти две детали из 1 группы взвешиваем на весах, если они равны по массе, то это обычные одинаковые детали. тогда приступаем ко второй группе. Берем детальку из второй группы и взвешиваем с деталькой из первой группы, если они равны, то отличающаяся деталь - это вторая делать из группы 2. Если же нет, то отличаюящая деталь это первая деталь из группы два.
Возвращаемся к первой группе. (мы не рассмотрели случай, где детали из первой группы не будут равны по массе). Так вот. В этом случае, берем деталь из первой группы и взвешиваем с деталью со второй группы, если они равны, то отличающаяся деталь - вторая деталь из группы 1. Если же нет, то отличающаяся деталь - первая деталь из группы 1.
...
...
Надеюсь ты поняла ход моих мыслей:D
Удачи на контрольной!
program massiv;
var b:array[1..100]of integer;
r,n,m,i,p,k,a:integer;
begin
randomize;writeln ('a=');readln(a);
writeln('n=');readln(n);
for i:=1 to n do begin
b[i]:=random(50)-25;
writeln('a[',i,']=');
if b[i]>0 then begin r:=r+b[i];p:=r*2;
if b[i]>a then k:=k+1;
if ((b[i]<a)and(b[i]>0)) then m:=m+1;
end;end;writeln('удвоенная сумма положительных элементов ',p);
writeln('kол-во элементов массива , значения которых больше заданного числа',k);
writeln('количество положительных элементов не превсходящих заданного числа',m);
end.