Создан графический файл цветной рисунок в режиме 256 цветов. Сохраните файл под именем name2.jpg. а) преобразуйте в черно-белую картинку с градациями серого цвета и 8-битным кодированием цвета точки. (Во сколько раз уменьшится размер файла?)
Из алгоритма видно, что сначала сравнивают, четно или нет число d. Если четно, то берут остаток от деления числа на 10, т.е крайнюю правую цифру числа и суммируют ее с a, если не четно, то суммируют c b. Затем прибавляют 1 к d, и получают целую часть от деления x на 10. Т.к изначально d = 0, то можно сделать вывод о том, что в переменной a хранится сумма всех цифр x, которые стоят на нечетных местах, а в переменной b - сумма цифр, стоящих на четных местах(Считая справа, т.к алгоритм работает справа налево). 17 можно получить, если сложить 9 и 8. Таким образом, мы выставляем 9 и 8 на четные позиции, а 4 ставит крайней справа, и тогда между 8 и 9 окажется 0. Так мы получим число 8094
static void Main(string[] args)
{ //задаем массив, и переменные для хранения минимального элемента, его строки и столбца
int[,] array = {
{1,10,11,12,13},
{2,12,11,12,13},
{3,30,11,12,13},
{4,40,11,12,13}
};
int minElement = array[0, 0];
int numStr = 0;
int numStolb = 0;
// вывод массива ДО
for (int i = 0; i < array.GetLength(0); i++)
{
for (int j = 0; j < array.GetLength(1); j++)
{
Console.Write(" " + array[i, j]);
}
Console.WriteLine();
}
Console.WriteLine();
//ищем минимальный элемент
for (int i = 0; i < array.GetLength(0); i++)
{
for (int j = 0; j < array.GetLength(1); j++)
{
if (minElement > array[i, j])
{
minElement = array[i, j];
//запоминаем строку и столбец минимального элемента
numStr = i;
numStolb = j;
}
}
}
//выводим в консоль минимальный элемент
Console.WriteLine("Min Element in array: " + minElement);
Console.WriteLine();
//если строка минимального элемента равна 0(т.е. первая)
//заменяем элементы после минимального на 0 и выводим массив ПОСЛЕ
if (numStr == 0)
{
for (int k = numStolb + 1; k < 5; k++)
{
//замена элементов строки на 0
array[0, k] = 0;
}
//вывод массива
for (int i = 0; i < array.GetLength(0); i++)
{
for (int j = 0; j < array.GetLength(1); j++)
{
Console.Write(" " + array[i, j]);
}
Console.WriteLine();
}
}
Console.ReadLine();
}
Наименьшее число - 8094
Из алгоритма видно, что сначала сравнивают, четно или нет число d. Если четно, то берут остаток от деления числа на 10, т.е крайнюю правую цифру числа и суммируют ее с a, если не четно, то суммируют c b. Затем прибавляют 1 к d, и получают целую часть от деления x на 10. Т.к изначально d = 0, то можно сделать вывод о том, что в переменной a хранится сумма всех цифр x, которые стоят на нечетных местах, а в переменной b - сумма цифр, стоящих на четных местах(Считая справа, т.к алгоритм работает справа налево). 17 можно получить, если сложить 9 и 8. Таким образом, мы выставляем 9 и 8 на четные позиции, а 4 ставит крайней справа, и тогда между 8 и 9 окажется 0. Так мы получим число 8094