Объем видеопамяти равен 512 кб, разрешающая дисплея — 320 х 200. сколько различных уровней яркости принимает красная, зеленая и синяя составляющие при условии, что видеопамять делится на две страницы?
Определим функцию f (x) = x^2 - 5cos(x-1); Необходимо найти ноль функции f (x) , т.е. значение х, при котором f(x) = 0; f(x) обратится в 0 , если cos(x-1) > 0 => - pi/2 < x < pi/2 => => (2 - pi)/2 < x < (2 + pi)/2 Корня будет два. Определим интервал для первого корня. Левая граница а = - 0,57, правая граница b = 1 Для второго корня левая граница а = 1, правая b = 2 корни будем находить методом деления пополам. Интервал [ a, b] делится пополам и определяется знак функции в этой точке, в зависимости от знака изменяется левая или правая граница интервала.
Программа будет следующей:
function f(x: real): real; begin f:=x*x-5*cos(x-1); end; { основная программа } var a,b,c,eps: real; k: integer; { a - начало интервала, b - конец } begin write('a = '); readln(a); write('b = '); readln(b); if f(a)*f(b)<0 then begin write('точность вычислений eps: '); readln(eps); k:=1; while abs(a-b)>eps do begin c:=(a+b)/2; if f(c)<>0 then begin if f(c)*f(b)<0 then a:=c else b:=c end; k:=k+1; end; writeln('корень = ',a:12:8); writeln('количество итераций: ',k); end else writeln('интервал задан неверно'); end.
a = -0.57 b = 1 точность вычислений eps: 0.00001 корень = -0.51726021 количество итераций: 19
a = 1 b = 2 точность вычислений eps: 0.00001 корень = 1.83345795 количество итераций: 18
Глубина цвета = 512 кб / 128000 пикселей = 512*8*1024 бит/128000 = 32.768 бит ~= 32 бит
32 бит / 3 = 10.(6) бит ~= 10 бит на канал
2^10 = 1024 степеней яркости на канал
320*200*2*3*10/8/1024 = 468.75 Кб видеопамяти занято, остальные не понятно чем занимаются
ответ 1024