Var a,b,c,d,e,f,g,x1,x2:real; begin Write('Введите значения e,f,g: '); Readln(e,f,g); a:=sqrt(abs(sqr(e)-g)/3); Writeln('a= ',a:0:5); b:=abs((e-f)/7); b:=b*sqr(b)-cos(g); Writeln('b= ',b:0:5); c:=f*sqr(f)-g/17; Writeln('c= ',c:0:5); d:=sqr(b)-4*a*c; if d<0 then Writeln('Действителных корней нет') else if d=0 then begin x1:=(-b-sqrt(d))/(2*a); x2:=x1; Writeln('x1=x2= ',x1:0:5) end else begin x1:=(-b-sqrt(d))/(2*a); x2:=(-b+sqrt(d))/(2*a); Writeln('x1= ',x1:0:5,', x2= ',x2:0:5) end end.
В примере ответы не соответствуют заданию: ищется самая большая цифра а не маленькая, а по условию должна искаться самая маленькая. Написал код, который соответствует именно заданию:
a,b,c,d,e,f,g,x1,x2:real;
begin
Write('Введите значения e,f,g: '); Readln(e,f,g);
a:=sqrt(abs(sqr(e)-g)/3); Writeln('a= ',a:0:5);
b:=abs((e-f)/7); b:=b*sqr(b)-cos(g); Writeln('b= ',b:0:5);
c:=f*sqr(f)-g/17; Writeln('c= ',c:0:5);
d:=sqr(b)-4*a*c;
if d<0 then Writeln('Действителных корней нет')
else
if d=0 then begin
x1:=(-b-sqrt(d))/(2*a); x2:=x1;
Writeln('x1=x2= ',x1:0:5)
end
else begin
x1:=(-b-sqrt(d))/(2*a); x2:=(-b+sqrt(d))/(2*a);
Writeln('x1= ',x1:0:5,', x2= ',x2:0:5)
end
end.
Тестовое решение:
Введите значения e,f,g: 2 -3 -3
a= 1.52753
b= 1.35442
c= -26.82353
x1= -4.65721, x2= 3.77053
В примере ответы не соответствуют заданию: ищется самая большая цифра а не маленькая, а по условию должна искаться самая маленькая. Написал код, который соответствует именно заданию:
Объяснение:
var
n, k, min, colmin, i: integer;
begin
repeat
Write('Введите число: ');
Readln(n);
until (n>=10000) and (n<=99999);
k := n;
min := k mod 10;
k := k div 10;
for i := 1 to 4 do
begin
if (k mod 10 < min) then min := k mod 10;
k := k div 10;
end;
k := n;
for i := 1 to 5 do
begin
if (k mod 10 = min) then inc(colmin);
k := k div 10;
end;
WriteLn(min, ' ', colmin);
end.