Var n,k:integer;
begin
writeln('n=',n);readln(n);
k:=0;
while n<>0 do
begin
if n mod 10 mod 2 =1 then k:=k+1;
n:=n div 10;
end;
writeln('k=',k);
<span>end.</span>
Ответ:100101001
Объяснение:Черный квадратик - 1, белый - 0
Y = X - 1 (1)
X = 2 + Y (2)
Y = X + Y (3)
Из (2) и (3) следует, что
10 = (2 + Y) + Y ⇒ Y = 4 (после выполнения команды 1)
X = 6 (после выполнения команды 2)
Значит, до работы алгоритма X = 5
Проверка:
X = 5
Y = X-1 = 5-1 = 4
X = 2+Y = 2+4 = 6
Y = X+Y = 6+4 = 10
Функция будет ложна тогда, когда первая скобка истинна, а вторая ложна ( 1 --> 0 = 0 ). Из этого следует, что x не должно быть равно y, если x = 0, то y = 1 и наоборот. Построим таблицу истинности:
x y z w F
0 1 0 0 = 0
0 1 0 1 = 0
0 1 1 0 = 1
0 1 1 1 = 1
1 0 0 0 = 1
1 0 0 1 = 0
1 0 1 0 = 0
1 0 1 1 = 1
Подставив значения, отсеем лишние строки. Подходят 1, 2, 6 и 7 строки. Какая-то переменная должна быть ложна все три раза. Видим, что это строчки 1, 3 и 6, поскольку z ложна трижды. Методом анализа и перебора строк, установим, что порядок таков: zwyx
Program one;var a,b,c,d,e,g:integer;beginwriteln('Введите цену помидор за один килограмм (в рублях)');readln(a);writeln('Введите вес помидор');readln(b);writeln('Стоимость покупки: ',a*b,' руб');writeln('Введите цену огурцов за один килограмм (в рублях)');readln(c);writeln('Введите вес огурцов');readln(d);writeln('Стоимость покупки: ',c*d,' руб');writeln('Введите цену яблок за один килограмм (в рублях)');readln(e);writeln('Введите вес яблок');readln(g);writeln('Стоимость покупки: ',e*g,' руб');end.