program z_array; uses crt; var a: array[1..100,1..100] of integer; m,n,i,j: byte; sum: integer; begin clrscr; writeln('введите количество строк матрицы'); readln(n); writeln('введите количество столбцов матрицы'); readln(m); writeln('введите элементы матрицы'); for i : = 1 to n dofor j : = 1 to m dobegin write('a[',i,',',j,'] = '); readln(a[i,j]); end; writeln('данная матрица'); writeln; sum : = 0; for i : = 1 to n dobeginfor j : = 1 to m dobegin write(a[i,j]: 5); if (j < i) then sum : = sum + a[i,j]; end; writeln; writeln('искомая сумма = ',sum); readln; end.
Ferrigen
19.11.2022
Решение: объем памяти занимаемого файла изображения равен кол-ву пикселов, умноженное на глубину цвета. 1) в первом случае у нас фигурируют два цвета: черный и белый, т.е. два пиксела. глубина цвета таких пикселов равна 1. таким образом, битов требует изображение. однако, можно перевести биты в байты, поделив полученное значение на 8. мы получим значение, равное 2500 байтам. 2) глубина цвета равна логарифму кол-ва цвета пикселов, доступные изображению по основанию 2. в нашем случае изображение хранит в себе пикселы, которые могут иметь 16-цветовое значение. значит, . т.е. глубина цвета каждого пиксела составляет 4 бита. теперь, столько битов потребуется, чтобы компьютер смог запомнить данное изображение. можно перевести биты в байты, поделив полученное значение на 8. получим 10000 байтов.
алексеевич810
19.11.2022
1. так как количество байт и бит должно быть одинаковым, у нас нет возможности кодировать числа и буквы по-разному. 2. всего тогда получается алфавит из 26 + 10 = 36 символов. 3. нам нужно узнать какой объем информации несет 36 символов. округляем вверх до 64 (степень двойки). 64 = 2 в 6-ой. значит, один символ кодируется 6-ю битами. 4. далее, минимальная ячейка у нас - 1 байт. половинчатые байты теоретически наверное могут быть, если у нас есть специальный тип данных "номер". но скорее всего придется смирится с потерей места и закодировать 1 символ 1 байтом. 5. 1 номер = 1 символ * количество символов = 14 байт. 6. 14 байт * 50 номеров = 700 байт.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Двухмерный массив. найти сумму элементов главной диоганали матрицы. кто сможет?
program z_array; uses crt; var a: array[1..100,1..100] of integer; m,n,i,j: byte; sum: integer; begin clrscr; writeln('введите количество строк матрицы'); readln(n); writeln('введите количество столбцов матрицы'); readln(m); writeln('введите элементы матрицы'); for i : = 1 to n dofor j : = 1 to m dobegin write('a[',i,',',j,'] = '); readln(a[i,j]); end; writeln('данная матрица'); writeln; sum : = 0; for i : = 1 to n dobeginfor j : = 1 to m dobegin write(a[i,j]: 5); if (j < i) then sum : = sum + a[i,j]; end; writeln; writeln('искомая сумма = ',sum); readln; end.