1) У нас имеется палитра из 256 цветов. Нам надо найти сколько это в битах(бит). Для этого делаем следующее: 2^i = 256 ищем i 2^1=2 2^2=4 2^3=8 2^4=16 2^5=32 2^6=64 2^7=128 2^8=256. Вот мы и нашли нужную нам степень - 8, а значит 1точка = 8бит. Находим кол-во точек. 10*10=100точек. Теперь находим информационный объём 100точек * 8бит = 800бит. Теперь переводим этот объем в байты (сказано в вопросе задачи) 800бит ÷ 8 = 100байт. Ответ: 100байт
2) Не буду расписывать эту задачу, потому что она идентична первой. Напишу просто решение. 2^i=2(два цвета - черный и белый) i=1бит. 160*100*1=16000бит. 16000бит=2000байт. Ответ: 2000байт
3) Тоже очень простая задача. Сначала нам надо определить информационный объём. Все для этого уже есть в условии задачи: i=16бит (=2^16) и разрешение (кол-во точек) 1280*1024. Находим кол-во точек 1280*1024=1310720точек. 1310720*16=20971520бит, теперь переводим полученное число в Мбайты. 20971520÷8=2621440байт, 2621440÷1024=2560Кбайт, 2560Кбайт÷1024=2,5Мбайт. Теперь мы знаем инф. объем и можем найти видеокарты с нужным кол-вом памяти. Действуем по принципу кол-во памяти > инф. объема. Ответ:4 Мбайт, 16 Мбайт, 32 Мбайт.
4)Теперь все наоборот, надо найти не инф. объем, а кол-во бит использующихся для кодирования точки. Сначала инф. объем переводим в биты: 512Кбайт*1024=524288байт, 524288байт*8=4194304бит. Теперь находим кол-во точек 1024*512=524288точек. Находим нужное нам значение, деля инф. объем на кол-во точек: 4194304 ÷ 524288 = 8бит. Подставляем 8бит в формулу 2^i=N: 2^8=256. Ответ: 256 цветов.
В двоичной записи три нуля.
Есть момент, связанный с y = корень(x) при x<0
Это притоверечит главному правилу корня, что подкоренное выражение больше 0, поэтому число x я умножаю на -1
#include <iostream>
#include <math.h>
using namespace std;
int main(){
setlocale(0,"rus");
float x,y;
cout << "введите значение x";
cin >> x;
if (x>0){ y = x-7 ;}
else if (x==0) {y = 3;}
else if (x<0) {y = sqrt(-1*x);}
cout << y;
return 0;
}
<em>// PascalABC.NET 3.3, сборка 1625 от 17.01.2018</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
1.To(ReadInteger('n=')).Aggregate(BigInteger(1),(x,y)->x*y*y).Println
end.
<u>Пример</u>
n= 100
8709782489089480079416590161944485865569720643940840134215932536243379996346583325877967096332754920644690380762219607476364289411435920190573960677507881394607489905331729758013432992987184764607375889434313483382966801515156280854162691766195737493173453603519594496000000000000000000000000000000000000000000000000