三九宝宝网宝宝百科宝宝知识

pascal的高精度算法

02月11日 编辑 39baobao.com

[怎么才提高精神]在办公室 1、调校灯火,强弱适中的光和恰当的光源助你集中思想,从头顶射下的高强度灯光可能会引起偏头痛,别忘了在工作间隙做做深呼吸,以吸入更多氧气。 2、减少噪音干扰,电脑发出...+阅读

高精度加法 var a,b,c:array[1..201] of 0..9; n:string; lena,lenb,lenc,i,x:integer; begin write('Input augend:'); readln(n);lena:=length(n); for i:=1 to lena do a[lena-i+1]:=ord(n[i])-ord('0');{加数放入a数组} write('Input addend:'); readln(n); lenb:=length(n); for i:=1 to lenb do b[lenb-i+1]:=ord(n[i])-ord('0');{被加数放入b数组} i:=1; while (i=10 {处理最高进位} then begin lenc:=i; c[i]:=1 end else lenc:=i-1; for i:=lenc downto 1 do write(c[i]); writeln {输出结果} end. 高精度乘法(低对高) const max=100; n=20; var a:array[1..max]of 0..9; i,j,k;x:integer; begin k:=1; a[k]:=1;{a=1} for i:=2 to n do{a*2*3….*n} begin x:=0;{进位初始化} for j:=1 do k do{a=a*i} begin x:=x+a[j]*i; a[j]:=x mod 10;x:=x div 10 end; while x>0 do {处理最高位的进位} begin k:=k+1;a[k]:=x mod 10;x:=x div 10 end end; writeln; for i:=k dowento 1 write(a[i]){输出a} end. 高精度乘法(高对高) var a,b,c:array[1..200] of 0..9; n1,n2:string; lena,lenb,lenc,i,j,x:integer; begin write('Input multiplier:'); readln(n1); rite('Input multiplicand:'); readln(n2); lena:=length(n1); lenb:=length(n2); for i:=1 to lena do a[lena-i+1]:=ord(n1[i])-ord('0'); for i:=1 to lenb do b[lenb-i+1]:=ord(n2[i])-ord('0'); for i:=1 to lena do begin x:=0; for j:=1 to lenb do{对乘数的每一位进行处理} begin x := a[i]*b[j]+x div 10+c[i+j-1];{当前乘积+上次乘积进位+原数} c[i+j-1]:=x mod 10; end; c[i+j]:= x div 10;{进位} end; lenc:=i+j; while (c[lenc]=0) and (lenc>1) do dec(lenc); {最高位的0不输出} for i:=lenc downto 1 do write(c[i]); writeln end. 高精度除法 fillchar(s,sizeof(s),0);{小数部分初始化} fillchar(posi,sizeof(posi),0); {小数值的位序列初始化} len←0;st←0; {小数部分的指针和循环节的首指针初始化} read(x,y);{读被除数和除数} write(x div y);{输出整数部分} x←x mod y;{计算x除以y的余数} if x=0 then exit;{若x除尽y,则成功退出} while len0 {若下一位余数先前出现过,则先前出现的位置为循环节的开始} then begin st←posi[x]; break;end;{then} if x=0 then break; {若除尽,则成功退出} end;{while} if len=0 then begin writeln;exit;end;{若小数部分的位数为0,则成功退出;否则输出小数点} write('.'); if st=0 {若无循环节,则输出小数部分,否则输出循环节前的小数和循环节} then for i←1 to len do write(s[i]) else begin for i←1 to st-1 do write(s[i]); write('('); for i←st to len do write(s[i]); write(')'); end;{else}

以下为关联文档:

怎么才能提高精可以提高人的精神的食物 豆类铁质是产生人体能量(能量食品)的主要介质,它担负着向人体器官和肌肉输送氧气的重要任务。因此,如果人体内缺乏铁(铁食品)质,就会导致贫血,使人感到头晕,...

什么办法可以提高精神状态一、认真安排好你的时间。首先你要清楚一周内所要做的事情,然后制定一张作息时间表。在表上填上那些非花不可的时间,如吃饭、睡觉、上课、娱乐等。安排这些时间之后,选定合适的...

怎么样能提高精子的质量生活中应注意哪些。①动物内脏含有较多的胆固醇,胆固醇是合成性激素的重要原料。还含有肾上腺素和性激素,能促进精原细胞的分裂和成熟。因此适量食用动物内脏,有利于提高体内雄激素水平,增加精液...

如何提高精子质量1、多参加锻炼。男性身体过度肥胖,会导致腹股沟处的温度升高,损害精子的成长,从而导致不育。因此,体重控制在标准范围内可以提高精子的质量。不过,锻炼强度要适中,剧烈的运动,如马...

怎样提高精子的质量饮食吃些什么注意调整饮食结构,提高饮食质量,以保证精子的产生备有充足的“原料”: (1)蛋白质。精子的主要成份是蛋白质,因此要造就质优的精子就要选用优质蛋白质,如各种瘦肉、鱼虾、禽蛋等富...

怎么样提高精子质量有什么技巧以下介绍助阳生精饮食的五个要素: 1)食用含有镁的信物。镁有助于调节人的心脏活动、降低血压、预防心脏病、提高男士的生育能力。建议男士早餐应吃2碗加牛奶的燕麦粥和1个香蕉...

怎样提高精神?现代化快节奏的生活,不仅需要你的刻苦耐劳、聪明机智,还要求具有旺盛的精力。萎靡不振的姿态不仅会使自己显得信心不足,也会使工作同仁及上司难以看到体积极向上的一面,以致影响...

什么食物吃了以后可以提高精子质量如果想提高精子的质量,那么男性应多吃新鲜水果和蔬菜,里面含有丰富的维生素,对于精子的甚至和发育是有好处的,同时减少红肉和高脂肪食物比如奶油的摄取,这对于增加精子数量是有好...

pascal高精度算法加法:program exam1; const max=200; var a,b,c:array[1..max] of 0..9; n:string; lena,lenb,lenc,i,x:integer; begin write('Input augend:'); readln(n); lena:=length(n...

推荐阅读
图文推荐