решал на паскале.
первая: var i: integer; s: string; a: array[1..3] of integer; t.q,z: boolean; beginreadln(i); q: =false; t: =false; a[1]: =i mod 10; a[2]: =i div 10 mod 10; a[3]: =i div 10 div 10; for i: =1 to 3 do
beginif a[i]=4 then
q: =true;
if (a[i]=7) and (q=true) then t: =true;
if a[i]=7 then z: =true;
end;
if t=true then writeln('vhodyat oba) else if (q=true) and (z=false) then writeln('vhodit 4') else if (q=false) and (z=true) then writeln('vhodut 7'); readln; end.
вторая: var a,b,c,min: integer; beginmin: =32000; readln(a,b,c); if a< min then min: =a; if b< min then min: =b; if c< min then min: =c; writeln ('minimalnoe - ',min); readln; end.
третья:
var a,b,c: integer; x,y,d: real; beginreadln(a,b,c); d: =b*b-(4*a*c); if d=0 thenbeginx: =(-b/2*a); writeln('one root: ',x: 0: 0); end; if d> 0 thenbeginx: =(-b+sqrt(d))/2*a; y: =(-b-sqrt(d))/2*a; if y> x thenwriteln('two roots: ',x: 0: 0,' ',y: 0: 0) else writeln('two roots: ',y: 0: 0,' ',x: 0: 0); end; if d< 0 then writeln('no roots'); readln; end.:
прямой способ счета:
применяем алгоритм в первый раз
14414400
применяем алгоритм во второй раз
14414400144144000000
считаем количество нулей
8
логический:
в исходном числе 2 четные цифры (4 и 4), значит после выполнения алгоритма в первый раз в конце допишется 2 нуля. когда мы выполним алгоритм во второй раз, то количество четных чисел увеличится в 2 раза, т.к. мы дважды записывали исходное число. таким образом, ченых чисел станет 4, а следовательно и допишется в конце 4 нуля. плюс не забываем о тех двух нулях, которые получились после певого выполнения алгоритма. а так как мы дважды переписали это число, то количество нулей стало 4. складываем: 4 образовалось полсе записи дважды числа и 4 за счет дописывания по количеству четных чисел. итого: 8
Поделитесь своими знаниями, ответьте на вопрос:
Решите в паскале 1)дана непустая последовательность целых чисел, оканчивающаяся нулем. найти: а) сумму всех чисел последовательности, больших числа x; б) количество всех четных чисел последовательности. 2)дана последовательность ненулевых целых чисел, оканчивающая нулем. оп- ределить, сколько раз в этой последовательности меняется знак. (например, в последовательности 10, –4, 12, 56, –4 знак меняется 3 раза.)