? - фальшивая
+ - настоящая
dif - знание о весе фальшивой (больше или меньше)
vs - взвешивание
=> - итог взвешивания
1 откладываем
1) 7? vs 7?
if == => 14+ 7? goto 2)
if <> => 7+ 14? goto
2) 4? vs 4+
if == => 18+ 3? goto 3)
if <> => 10+ 4? goto
3) 2? vs 2+
if == => 20+ 1? goto 4)
if <> => 19+ 2? goto
4) 1? vs 1+
if == => фальшивая та что отложена вначале
if <> => нашли
Вот программа и результат ее работы (см. скриншоты)
Эта программа находит максимальный элемент, стоящий на четном месте и минимальный элемент, стоящий на нечетном месте
Затем max и min складываются.
Чтобы протестировать программу необходимо УБРАТЬ ввод датчиком случайных чисел (random) и написать ввод с клавиатуры.
Сейчас выставлю второй вариант (для тестирования)
<span>#include <iostream>
using namespace std;
int main()
{
int n1, n2, n3, k;
cout << "Введите 3 числа:";
cin >> n1 >> n2 >> n3, cout << <span>"\n"</span>;
k = (n1-1)/2+1 + (n2-1)/2+1 + (n3-1)/2+1;
cout << k;
return 0;
<span>}
Пример:
</span><span>Введите 3 числа: 21 20 15
29</span></span>
//Я к сожелению знаю С#, но языки похожи (чем - то)
int a = 10;int b = 20;int c = 30;int d = 40;int aa = 90;int bc = 100;int dac = 30;int bdc = 50;int cc = 70;int dc = 80;int aac = 90;int bbc = 10;
// Это 10 нат. чисел
//////////long Deystvie1 = a + b + c + d + aa + bc + cc + dc + dac + bdc + aac + bbc;long Deystvie2 = a * b * c * d * aa * bc * cc * dc * dac * bdc * aac * bbc; /////////Console.WriteLine("Произведение чисел:", Deystvie2);Console.WriteLine("Сумма чисел:", Deystvie1);