Тут ответ номер 3 по идеи
Не уверена, что поняла вопрос правильно, но всё-таки:
1. Разделить десятичное число на 2, получится частное и остаток.
2. Разделить <em>частное</em> на 2, получится частное и остаток.
3. Продолжать деление частных, пока последнее частное не будет меньше 2.
4. Последнее частное и остатки записать в обратном порядке.
Например, из 27 в десятичной = 11011 в двоичной.
<span>Могу предложить на Паскале:
uses Crt;
var x, y, z: real;
</span><span>begin
ClrScr;
Write ('x = '); ReadLn(x);
Write ('y = '); ReadLn(y);
if (y<>-7) and (x+abs(y)>=0)
then
begin
z:=9*sqr(sqr(x))-sqrt(x+abs(y))/(y+7);
WriteLn('z = ', z:4:2);
end
else Writeln('None!');
ReadLn;
end.
Здесь важно учесть, что Y не должен равняться (-7), поскольку на 0 делить нельзя, и X должен быть больше или равен модулю Y, поскольку нельзя извлекать корень из отрицательного числа.
PS: Если надо решение на Си++, то это сделать просто, основываясь на приведенной выше программе...
</span>
Var
x,max:real;
n,i:integer;
begin
write('Введите число n: ');
readln(n);
for i:=1 to n do
begin
write('Введите число ',i,': ');
readln(x);
if x<0 then
begin
if max=0 then max:=x; // если это первое отр.число
if x>max then max:=x
end
end;
writeln('Наибольшее среди отрицательных: ',max)
<span>end.</span>
Думаю, что эта программа подойдёт:
var count,i,n,min,book: Integer;
a: array[0..100] of Integer;
begin
min:=1000;
writeln('Введите кол-во учебников');
readln(count);
dec(count);
for i:=0 to count do
begin
writeln('Введите кол-во заданий в ',i+1,' учебнике');
readln(n);
a[i]:=n;
end;
for i:=0 to count do
begin
if a[i]<min then
begin
min:=a[i];
book:=i+1;
end;
end;
writeln('Номер учебника, в котором находится наименьшее кол-во заданий: ',book);
end.