free pascal基础编程

描述输入两个正实数a,b(a<>1),输出a的b次幂、以a为底b的对数。输入输入两个正实数a,b输出输出a的b次幂、以a为底b的对数(每个数据一行,输出场宽为12,保留4位小数)样例输入2 5样例输出 32.0000 2.3219提示标准函数EXP和LN分别是以e为底的指数函数和对数函数,本题要运用相关的数学知识(对数式与指数式的相互转化、换底公式)和这两个函数。x^n=exp(ln(x^n))=exp(n*ln(x))用到这个公式ln(x^y)=y*ln*(x)
2026年09月25日 21:37
有4个网友回答
网友(1):

program cyw;
uses math;
var a,b,ans:extended;
begin
readln(a,b);
ans:=exp(b*ln(a));
writeln(ans:12:4);
ans:=ln(b)/ln(a);
writeln(ans:12:4);
end.

这两个函数要不要数学库(uses math)我也记不清楚,好像是不要的,以防万一吧
extended而不是real,是为了提高精确度,noip好像是能用的吧

网友(2):

var a,b,s:real;
begin
readln(a,b);
s:=exp(b*ln(a));
writeln(ans:12:4);
s:=ln(b)/ln(a);
writeln(ans:12:4);
end.
{extended 要开函数开关的好吧,noip不能开的}

网友(3):

var a,b,s:real;
begin
readln(a,b);
s:=exp(b*ln(a));
writeln(ans:12:4);
s:=ln(b)/ln(a);
writeln(ans:12:4);
end.

网友(4):

好难,打酱油