Дано:
N1 = 256 цветов
N2 = 65536 цветов
Найти:
V1<V2 во сколько раз
1) N1 = 2^i1
256 = 2^8
i1 = 8 бит глубина кодирования 1 пикселя, если использовать палитру 256 цветов
2) N2 = 2^i2
65536 = 2^16
i2 = 16 бит глубина кодирования 1 пикселя, если использовать палитру 65536 цветов
3) пусть S - количество пикселей в изображении - оно одинаково для обеих палитр (по условию задачи рисунок был один и тот же)
тогда
V1 = S * i1, следовательно S = V1 / i1
V2 = S * i2, следовательно S = V2 / i2
V1/i1 = V2/i2
V1/8 = V2/16
V2 * 8 = V1 * 16
Делим обе части на 8
V2 = 2*V1
Значит V2 > V1 в два раза
ответ: информационный объем файла увеличился в два раза.
1)
23 + 75 =
Сложить 3+5 = 10 - 0 пишем, 1 десяток запоминаем
7 + 2 = 11 , 1 запоминали значит 11+1=12
ответ: 23 + 75=120
120 из 8 системы переведем в двоичную:
120 переведем в 10 систему счисления:
120 = 1*8^2 + 2*8^1 + 0*8^0 = 64 + 16 +0 = 80
80 переведем из десятичной в двоичную:
80/2=40 ост 0
40/2=20 ост 0
20/2=10 ост 0
10/2=5 ост 0
5/2=2 ост 1
2/2=1 ост 0
число 120(8) = 1010000(2)
2 задание:
14 + 3В = 4F(16)
4F = 4*16^1 + F*16^0 = 64 + 15 = 79 - в десятичной системе счисления
Переведем в 2 систему:
79/2 = 39 ост 1
39/2 = 19 ост 1
19/2=9 ост 1
9/2=4 ост1
4/2=2 ост 0
2/2=1 ост 0
4F(16) = 1001111(2)
Поделитесь своими знаниями, ответьте на вопрос:
Найти в массиве те элементы, значение которых меньше среднего арифметического, взятого от всех элементов массива. С++
Я использовал динамическое выделение памяти под массив, чтобы пользователь мог сам задать количество элементов в массиве.
Текст программы:
#include <locale>
#include <iostream>
#include <cstdlib>
using namespace std;
int main(int argc, char argv[]) {
setlocale(LC_ALL, "Russian");
int n, *a, i, kol = 0;
double sum = 0;
cout << "Введите количество элементов в массиве"<<endl;
cin >> n;
a = new int[n];
cout << "Введите числа:" << endl;
for (i = 0; i < n; i++) {
cin >> a[i];
sum = sum + a[i];
kol = kol + 1;
}
cout << "Ваш массив:" << endl;
for (i = 0; i < n; i++)
cout << a[i]<<" ";
sum = sum / kol;
cout << "\n\nСреднее арифметическое: \n" << sum << endl;
cout << "\n\nЧисла, которые меньше среднего арифметического:"<<endl;
for (i = 0; i < n; i++) {
if (sum > a[i])
cout << a[i] <<endl;
}
return 0;
}