Немного теории:
Любой доступ к элементу массива, осуществляемый с помощью операции индексирования может быть осуществлен при помощи указателей.
Имя массива хранит адрес его нулевого элемента. Поэтому адрес любого i элемента массива можно представить как (x+i), где x - указатель на первый элемент массива. А его значение как *(x+i)
Подобные операции верны для любого типа и размера массивом, так как при прибавлении к указателю целого числа, он "сдвигается" не на i байтов, а на i элементов этого типа.
int a[]={7,8,9}; - инициализация массива.
int b*=a - в этой строчке ошибка. Правильно: int *b=a; - объявляем указатель на нулевой элемент массива.
b++; - операция постфиксного инкремента(так как значение b в этой строчке нигде не используется, то данное выражение равносильно b=b+1). Теперь в b находится адрес первого элемента массива.
*(b+1)=*b - присваиваем второму элементу массива значение первого элемента(эта запись равносильна a[2]=a[1])
b[1] равносильно a[2] (не забываем, что в b[0] теперь адрес первого элемента, а не в нулевого. Адрес нулевого элемента будет в b[-1], а второго элемента - в b[1]).
В итоге значение b[1] равно 8
Ответ: 8
Program Maz; var a,b:integer; rez:real; p:char;begin write('Введите а = ');readln(a);write('Введите символ: '); readln(p); write('Введите b = '); readln(b); case p of '+': rez:=a+b; '-': rez:=a-b; '*': rez:=a*b; '/': rez:=a/b; end; writeln(a,p,b,'= ',rez); end.
Для хранения текста объёмом 5120 символов при 8 битном кодировании потребуется 5 килобайт
В вопросе скорей всего ошибка.
Наверно имеется ввиду 1 пиксель, а не бит.
Глубина цвета = 32 бита, значит 1 пиксель кодируется 32 битами
32 бита=4 байта