1.35-16=19-не посещают кружки
2.19-17=2 -посещают биологию
3.9-7=2-посещают математику и биологию
ответ=2 ребят посещают математику и биологию
Var
A:integer;
Begin
WriteLn('Введите номер месяца');
ReadLn(A);
A:=A mod 12;
Case A of
0,1,2:WriteLn('Зима');
3,4,5:WriteLn('Весна');
6,7,8:WriteLn('Лето');
9,10,11:WriteLn('Осень')
End
End.
Немного теории:
Любой доступ к элементу массива, осуществляемый с помощью операции индексирования может быть осуществлен при помощи указателей.
Имя массива хранит адрес его нулевого элемента. Поэтому адрес любого 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 n1;
var n: real;
begin
write('введите число: ');
readln(n);
if n>0 then writeln(n*n) else writeln(n*n*n);
end.
государство. ..................
...