在程序中定义一函数digit(n,k),它能分离出整数n从右边数第k个数字 如 digit(49687,5)=4 digit(2076,5)=0
我做的.输入(49687,5)后、总是输出0 为什么阿.
var n1,k1:integer;
function digit(n,k:integer):longint;
var i,j:integer;
begin
i:=1;
for j:=1 to k do i:=i*10;
digit:=trunc(n/i);
end;
begin
read(n1,k1);
write(digit(n1,k1));
end.
人气:362 ℃ 时间:2020-04-03 22:46:08
解答
var n1,k1:longint;
function digit(n,k:longint):longint;
var i,j:longint;
begin
i:=1;
for j:=1 to k do i:=i*10;
n:=n mod i;
i:=1;
for j:=1 to k-1 do i:=i*10;
digit:=trunc(n/i);
end;
begin
read(n1);
read(k1);
write(digit(n1,k1));
end.为什么是 k-1 呢
推荐
- 编写一个函数digit(n,k),它把数n从右边起的第k位数字的值给出来,其中n为正整数,若n的位数不足k,则函数返回
- mg/lsb和mg/digit分别是什么意思
- 九年级上册古文有哪些?智取生辰纲,杨修之死那一单元算是古文么?
- 中华文化博大精深不但汉字寓意深远语言也同样精辟你能举几个例子吗
- 若a+3的绝对值与b-4的平方互为相反数,求a的b次幂的值.(要有具体过程)
- 某电源在使用过程中,当通过它的电流大小有明显变化时,路端电压的变化并不明显,这是什么原因造成的?
- He hasn't decided_______.
- 若x1,x2,x3的平均数为4,则x1+1,x2+2,x3+3的平均数是_.
猜你喜欢