Program bit;
var m,a1,a2,a3:
integer;
begin
writeln('введите три числа');
readln(a1,a2,a3);
if (a1<a2) and (a1<a3) then m:=a1;
if (a2<a1) and (a2<a3) then m:=a2;
if (a3<a1) and (a3<a2) then m:=a3;
if (a1=a2) and (a1=a3) then
writeln('они равны')
else writeln('меньшее из трёх ',m);
<span>end.</span>
1.000.1112 = 1∙20+0∙2-1+0∙2-2+0∙2-3+.∙2-4+1∙2-5+1∙2-6+1∙2-7 = 1+0+0+0+0+0.03125+0.015625+0.0078125 = 1.054687510
Получилось: <span>1.0546875<span>10</span></span>
Var x,y :real;
begin
write('Введите значение x=');
readln(x);
if (x>-3) and (x<5) then
begin
if x<-1 then y:=3*x
else if x<1 then y:=sin(x)-cos(x)
else y:=x*x+1/2*x-7;
writeln('При x=',x,' y=',y)
end
else writeln('При x=',x,' функция не определена')
<span>end.</span>
<span>часть памяти компьютера, в которую попадает скопированный и вырезанный фрагмент текста</span> называется буфером обмена
Sub Alg_1()
xN = -5: xK = 5: h = 0.1
x = xN: i = 1
Do While x <= xK
y = 3 * x ^ 2 - 6 * x + 5
Cells(i, 1) = x: Cells(i, 2) = y
x = x + h: i = i + 1
Loop
End Sub
Во вложении файл с рабочей книгой MS Excel 2003. Макрос на листе 1.
<u>Теперь о Вашей ошибке</u>
<span>Dim xN, xK, x As Integer
Dim y, h As Single
xN = -5
...
h = 0.1
x = xN
...
x = x + h</span>
Такое описание означает, что xN, xK будут типа Variant, х - типа Integer.
y тоже будет типа Variant, h - типа Single.
При выполнении опeратора x=x+h целочисленное x сначала увеличится на 0.1, а затем дробная часть будет отброшена. Поэтому х постоянно будет равен xN и цикл станет бесконечным.