Ответ:
Объяснение:
program pr; label l; var mas: array[1..10] of integer; i,k,n,b,sum: integer; beginrandomize; for i: =1 to 10 do mas[i]: =round(())*random+(-10)); l: for i: =1 to 10 dobeginif n< mas[i] thenbeginn: =mas[i]; k: =i; end; end; writeln ('a[',k,']=',n); mas[k]: =-11; n: =0; k: =0; if b=0 thenbeginb: =1; goto l; end; readln; end.
программу проверил все работает
2 байта- 16бит, 16бит*18символов=288бит
1. Упростим исходную логическую функцию
Для удобства записи будем использовать общепринятые сокращения. Операцию логического сложения (дизъюнкцию) "∨" будем обозначать знаком "+". Логическое умножение (конъюнкцию) "∧" будем обозначать знаком умножения (точкой) или опускать, как принято в алгебре. Вместо знака логического отрицания будем использовать надчеркивание.
2. Переведем в двоичную систему счисления заданные значения A, B, C:
3. Построим таблицу истинности для функции у
4. Переведем результат в десятичную систему счисления
Предположим, что фальшивая монета легче подлинной.
Разделим монеты на группы по 15 и одну монету отложим в сторону. Взвесим группы по 15. Если весы находятся в равновесии, то фальшивая монета отложена. Если же одна из чаш весов оказалась легче, то фальшивая монета там.
15 монет из легкой чаши снова разделим на 7, 7 и монета в стороне. Повторим взвешивание. Если фальшивая монета не найлена, то из более легкой чаши монетки разделим на 3, 3 и одну.
Повторим взвешивание с лекгой чашей в четвертый раз. 1, 1 и монета в стороне.
Фальшивка найдена не более чем за 4 взвешивания.