Дано:
V = 512 Кбайт
Р = 640 ×480 пикс
N1=16 цв
N2 =256 цв
Найти:
S1 -?
S2 - ?
1) Найдем количество пикселей в изображении:
P = 640 ×480 = 307200 пикселей в изображении видеопамяти
2) Найдем глубину кодирования 1 пикселя
N = 2^i, где i - глубина кодирования 1 пикселя (количество ячеек памяти, предназначенных для 1 точки экрана)
16 = 2^4
i1 = 4 бит - глубина кодирования 1 пикселя при использоывании 16 цветов
256 = 2^8
i2 = 8 бит - глубина кодирования 1 пикселя при использоывании 256 цветов
3) Найдем объемы памяти нужные для хранения 1 страницы изображения:
V1 = i1 × P = 4 × 307200 = 1228800 бит = 153600 байт = 150 Кбайт - займет одна страница изображения при палитре в 16 цветов
V2 = i2 × P = 8 × 307200 = 2457600 бит = 300 Кбайт - займет одна страница изображения при палитре в 256 цветов
4) Посчитаем, сколько поместиться страниц экрана при разных палитрах:
512/150 = 3, 4 страницы, если палитра 16 цветов
512/300 = 1,7 страницы, если палитра 258 цветов
ответ:3,4 стр при палитре в 16 цветов
1,7 страницы при палитре в 256 цветов.
#include <iostream>
using namespace std;
int main()
{
int line, column;
cout << "Введите количество строк и столбцов через пробел: ";
cin >> line >> column;
int array[50][50] = {};
cout << "Введите элементы двумерного массива: \n";
for (int i = 0; i < line; i++ )
for (int j = 0; j < column; j++)
cin >> array[i][j];
}
int max = array[0][1];
int line_number = 1;
for (int i = 0; i < line; i++)
int j = 1;
if (max < array[i][j])
max = array[i][j];
line_number = i + 1;
cout << line_number;
Объяснение:
#include <iostream> // Библиотека ввода - вывода
using namespace std; // Пространство имен
int line, column; // Создание целочисленных переменных, отвечающих за количество строк и столбцов в двумерном массиве
cout << "Введите количество строк и столбцов через пробел: "; // Вывод сообщения в консоль
cin >> line >> column; // Ввод количества строк и столбцов с клавиатуры
int array[50][50] = {}; // Создание целочисленного массива размером 50х50
cout << "Введите элементы двумерного массива: \n"; // Вывод сообщения в консоль
for (int i = 0; i < line; i++ ) // Цикл для ввода элементов массива
for (int j = 0; j < column; j++) // Цикл для ввода элементов массива
cin >> array[i][j]; // Ввод элементов массива
int max = array[0][1]; // Присваиваем переменной, хранящей максимум, значение массива в 0 строке и 1 столбце
int line_number = 1; // Переменная, хранящая номер строки
for (int i = 0; i < line; i++) // Цикл для прогона значений 2-го столбца
int j = 1; // // Нужны значения определенного столбца ⇒ значение переменной j будет постоянным
if (max < array[i][j]) // Если значение переменной max < значения массива i строки и j столбца
max = array[i][j]; // Значение переменной max = значению массива i строки и j столбца
line_number = i + 1; // Номер строки = индекс строки + 1 (т. к. индексация начинается с нуля)
cout << line_number; // Вывод ответа
Дано:
V = 512 Кбайт
Р = 640 ×480 пикс
N1=16 цв
N2 =256 цв
Найти:
S1 -?
S2 - ?
1) Найдем количество пикселей в изображении:
P = 640 ×480 = 307200 пикселей в изображении видеопамяти
2) Найдем глубину кодирования 1 пикселя
N = 2^i, где i - глубина кодирования 1 пикселя (количество ячеек памяти, предназначенных для 1 точки экрана)
16 = 2^4
i1 = 4 бит - глубина кодирования 1 пикселя при использоывании 16 цветов
256 = 2^8
i2 = 8 бит - глубина кодирования 1 пикселя при использоывании 256 цветов
3) Найдем объемы памяти нужные для хранения 1 страницы изображения:
V1 = i1 × P = 4 × 307200 = 1228800 бит = 153600 байт = 150 Кбайт - займет одна страница изображения при палитре в 16 цветов
V2 = i2 × P = 8 × 307200 = 2457600 бит = 300 Кбайт - займет одна страница изображения при палитре в 256 цветов
4) Посчитаем, сколько поместиться страниц экрана при разных палитрах:
512/150 = 3, 4 страницы, если палитра 16 цветов
512/300 = 1,7 страницы, если палитра 258 цветов
ответ:3,4 стр при палитре в 16 цветов
1,7 страницы при палитре в 256 цветов.
#include <iostream>
using namespace std;
int main()
{
int line, column;
cout << "Введите количество строк и столбцов через пробел: ";
cin >> line >> column;
int array[50][50] = {};
cout << "Введите элементы двумерного массива: \n";
for (int i = 0; i < line; i++ )
{
for (int j = 0; j < column; j++)
{
cin >> array[i][j];
}
}
int max = array[0][1];
int line_number = 1;
for (int i = 0; i < line; i++)
{
int j = 1;
if (max < array[i][j])
{
max = array[i][j];
line_number = i + 1;
}
}
cout << line_number;
}
Объяснение:
#include <iostream> // Библиотека ввода - вывода
using namespace std; // Пространство имен
int main()
{
int line, column; // Создание целочисленных переменных, отвечающих за количество строк и столбцов в двумерном массиве
cout << "Введите количество строк и столбцов через пробел: "; // Вывод сообщения в консоль
cin >> line >> column; // Ввод количества строк и столбцов с клавиатуры
int array[50][50] = {}; // Создание целочисленного массива размером 50х50
cout << "Введите элементы двумерного массива: \n"; // Вывод сообщения в консоль
for (int i = 0; i < line; i++ ) // Цикл для ввода элементов массива
{
for (int j = 0; j < column; j++) // Цикл для ввода элементов массива
{
cin >> array[i][j]; // Ввод элементов массива
}
}
int max = array[0][1]; // Присваиваем переменной, хранящей максимум, значение массива в 0 строке и 1 столбце
int line_number = 1; // Переменная, хранящая номер строки
for (int i = 0; i < line; i++) // Цикл для прогона значений 2-го столбца
{
int j = 1; // // Нужны значения определенного столбца ⇒ значение переменной j будет постоянным
if (max < array[i][j]) // Если значение переменной max < значения массива i строки и j столбца
{
max = array[i][j]; // Значение переменной max = значению массива i строки и j столбца
line_number = i + 1; // Номер строки = индекс строки + 1 (т. к. индексация начинается с нуля)
}
}
cout << line_number; // Вывод ответа
}