// PascalABC.NET 3.1, сборка 1239 от 08.05.2016
begin
var x:=ReadReal('x=');
var s:=0.0;
for var i:=1 to ReadInteger('n=') do s+=sin(i*x);
Writeln('s=',s)
end.
<u><em>Тестовое решение</em></u>
x= 0.543
n= 15
s=2.79048740821036
1. Строим таблицу истинности и выделяем в ней строки, где функция принимает нулевое значение (см. вложение)
2. В каждой выделенной строке записываем дизъюнкцию из инвертированных значений аргументов, а затем все дизъюнкции объединяем в конъюнкцию.
f(X,Y,Z) = f(0,0,0) = 0 и получаем дизъюнкцию X∨Y∨Z
f(0,1,0) запишется как X∨¬Y∨Z
f(1,0,0) запишется как ¬X∨Y∨Z
f(1,0,1) запишется как ¬X∨Y∨¬Z
Объединяем:
(X∨Y∨Z) ∧ (X∨¬Y∨Z) ∧ (¬X∨Y∨Z) ∧ (¬X∨Y∨¬Z)
1.
1500 Кбайт = 1500*1024 байт
Память для 1 пикселя:
1500*1024/(840*640) ≈ 2,8 байт ≈ 2 байта (округляем в меньшую сторону) = 16 бит
Количество цветов в палитре = 2^16 = 65536
2.
При использовании 32-цветной палитры для хранения 1 точки необходимо log(2)32 = 5 бит
Для всего изображения:
64*256*5 бит = 64*256*5/8 байт = 10240 байт = 10240/1024 Кбайт = 10 Кбайт