切换到宽版
  • 7653阅读
  • 9回复

求高精度减法程序 [复制链接]

上一主题 下一主题
离线wbkr
 
只看楼主 倒序阅读 0 发表于: 2005-11-17
我的帖子呢?求高精度减法程序,要简单的,谢
离线sunlight
只看该作者 1 发表于: 2005-11-17
TYPE
  sun=ARRAY[0..1000]OF shortint;

PROCEDURE minus(VAR a:sun;b:sun);
  VAR j,m:integer;
  BEGIN
  a[a[0]+1]:=0;
    FOR j:=1 TO a[0] DO
    BEGIN
      dec(a[j],b[j]);
      IF a[j]<0 THEN BEGIN
                  a[j]:=a[j]+10;
                  dec(a[j+1])
                END;
    END;
  WHILE(a[a[0]]=0)AND(a[0]>0)DO
        dec(a[0])

  END;



红色语句不能少,但如果不是调用过程就没关系,
因为数组a进入过程以后,第a[0]个数以后的数都被赋为其它值
(这里a[0]用来表示数组a有效数位的个数),
从而影响兰色语句判断此时有效数位个数。
此过程表示求a-b,并将结果保存在a中。
离线pbh
只看该作者 2 发表于: 2007-02-01
program ex;
var
  i,j,k,n,p,t:integer;
  a:array[1..100]of integer;
  f:text;
begin
  write('input n:');
  read(n);
  for i:=1 to n do
  read(a);
  readln;
  begin
  for i:=1 to n-1 do
    begin
    p:=i;
    for j:=i+1 to n do
      if a[j]<a[p] then
      begin
        t:=a[j];
        a[j]:=a[p];
        a[p]:=t;
      end;
  end;
  for i:=1 to n do
  write(a,' ');
  readln;
  end;
end.
离线pbh
只看该作者 3 发表于: 2007-02-01
快速排序:
program ex;
var
  i,j,k,n,p,t:integer;
  a:array[1..100]of integer;
  f:text;
begin
  write('input n:');
  read(n);
  for i:=1 to n do
  read(a);
  readln;
  begin
  for i:=1 to n-1 do
    begin
    p:=i;
    for j:=i+1 to n do
      if a[j]<a[p] then
      begin
        t:=a[j];
        a[j]:=a[p];
        a[p]:=t;
      end;
  end;
  for i:=1 to n do
  write(a,' ');
  readln;
  end;
end.
离线pbh
只看该作者 4 发表于: 2007-02-01
离线pbh
只看该作者 5 发表于: 2007-02-01
» pbh 退出 | 控制面板 | 短消息 | 搜索 | 社区服务 | 勋章中心 | 博客 | 帮助 | 社区 | 无图版
社区服务
银行
朋友圈
道具中心
短消息
收件箱
群发消息
发件箱
消息跟踪
写新消息
控制面板
控制面板首页
编辑个人资料
查看个人资料
好友列表
用户权限查看
交易币管理
特殊组购买
收藏夹
我的主题

OI爱好者(OIFans.cn) -> 新手社区 -> 求高精度减法程序

   

收藏主题上一主题下一主题wbkr






级别: OIFans初赛选手
精华: 0
发帖: 30
威望: 222 点
OI财富: 230 元
贡献值: 0 点
在线时间:5(小时)
注册时间:2005-10-31
最后登录:2006-08-25    

求高精度减法程序

我的帖子呢?求高精度减法程序,要简单的,谢

邮件系统正式运行,点击这里申请一个@OIFans.cn的邮箱!

[楼 主] | Posted: 2005-11-17 16:35  


sunlight




级别: OIFans初赛选手
精华: 0
发帖: 50
威望: 227 点
OI财富: 290 元
贡献值: 0 点
在线时间:14(小时)
注册时间:2005-11-14
最后登录:2006-11-26      



TYPE
sun=ARRAY[0..1000]OF shortint;

PROCEDURE minus(VAR a:sun;b:sun);
VAR j,m:integer;
BEGIN
a[a[0]+1]:=0;
  FOR j:=1 TO a[0] DO
  BEGIN
    dec(a[j],b[j]);
    IF a[j]<0 THEN BEGIN
            a[j]:=a[j]+10;
            dec(a[j+1])
          END;
  END;
WHILE(a[a[0]]=0)AND(a[0]>0)DO
    dec(a[0])
END;



红色语句不能少,但如果不是调用过程就没关系,
因为数组a进入过程以后,第a[0]个数以后的数都被赋为其它值
(这里a[0]用来表示数组a有效数位的个数),
从而影响兰色语句判断此时有效数位个数。
此过程表示求a-b,并将结果保存在a中。

邮件系统正式运行,点击这里申请一个@OIFans.cn的邮箱!

[1 楼] | Posted: 2005-11-17 16:53  


pbh






级别: OIFans入门选手
精华: 0
发帖: 14
威望: 15 点
OI财富: 140 元
贡献值: 0 点
在线时间:3(小时)
注册时间:2006-12-24
最后登录:2007-02-01    



program ex;
var
i,j,k,n,p,t:integer;
a:array[1..100]of integer;
f:text;
begin
write('input n:');
read(n);
for i:=1 to n do
read(a);
readln;
begin
for i:=1 to n-1 do
  begin
  p:=i;
  for j:=i+1 to n do
    if a[j]<a[p] then
    begin
    t:=a[j];
    a[j]:=a[p];
    a[p]:=t;
    end;
end;
for i:=1 to n do
write(a,' ');
readln;
end;
end.

大家喜欢哪个风格?

[2 楼] | Posted: 2007-02-01 15:11  


pbh






级别: OIFans入门选手
精华: 0
发帖: 14
威望: 15 点
OI财富: 140 元
贡献值: 0 点
在线时间:3(小时)
注册时间:2006-12-24
最后登录:2007-02-01    



快速排序:
program ex;
var
i,j,k,n,p,t:integer;
a:array[1..100]of integer;
f:text;
begin
write('input n:');
read(n);
for i:=1 to n do
read(a);
readln;
begin
for i:=1 to n-1 do
  begin
  p:=i;
  for j:=i+1 to n do
    if a[j]<a[p] then
    begin
    t:=a[j];
    a[j]:=a[p];
    a[p]:=t;
    end;
end;
for i:=1 to n do
write(a,' ');
readln;
end;
end.

邮件系统正式运行,点击这里申请一个@OIFans.cn的邮箱!

[3 楼] | Posted: 2007-02-01 15:12  


pbh






级别: OIFans入门选手
精华: 0
发帖: 14
威望: 15 点
OI财富: 140 元
贡献值: 0 点
在线时间:3(小时)
注册时间:2006-12-24
最后登录:2007-02-01    



   

邮件系统正式运行,点击这里申请一个@OIFans.cn的邮箱!

[4 楼] | Posted: 2007-02-01 15:13  


快速跳至 >> OI周周练 |- OI周周练 >> 征战OI |- USACO |- URAL |- TOJ >> OI漫谈 |- 竞赛题库 |- 资料教程 |- 新手社区 |- 华山论剑 |- 趣味OI |- C/C++专区 >> OI水库 |- 随心所欲 |- 信息相关 >> OI管理局 |- OIFans大喇叭 |- OI公告 |- 投诉/斑竹申请区

OI爱好者(OIFans.cn) -> 新手社区
 

快速发帖 顶端

内容
HTML 代码不可用
Wind Code Open
[img] - Open
[flash] - Close
匿名帖
隐藏此帖
出售此帖
加密此帖

[查看帖子长度] 标题:
使用签名 Wind Code自动转换 表情:      
   
按 Ctrl+Enter 直接提交  





浙ICP备05078901号
Powered by PHPWind v5.0.1 Code © 2003-06 PHPWind
Total 0.039370(s) query 5, Time now is:02-01 15:13, Gzip enabled
You can contact us
离线pbh
只看该作者 6 发表于: 2007-02-01
program ex;
var
i,j,k,n,p,t:integer;
a:array[1..100]of integer;
f:text;
begin
write('input n:');
read(n);
for i:=1 to n do
read(a);
readln;
begin
for i:=1 to n-1 do
begin
p:=i;
for j:=i+1 to n do
  if a[j]<a[p] then
  begin
  t:=a[j];
  a[j]:=a[p];
  a[p]:=t;
  end;
end;
for i:=1 to n do
write(a,' ');
readln;
end;
end.
离线pbh
只看该作者 7 发表于: 2007-02-01
program ex;
var
i,j,k,n,p,t:integer;
a:array[1..100]of integer;
f:text;
begin
write('input n:');
read(n);
for i:=1 to n do
read(a);
readln;
begin
for i:=1 to n-1 do
begin
p:=i;
for j:=i+1 to n do
  if a[j]<a[p] then
  begin
  t:=a[j];
  a[j]:=a[p];
  a[p]:=t;
  end;
end;
for i:=1 to n do
write(a,' ');
readln;
end;
end.
离线hy6210cs
只看该作者 8 发表于: 2007-02-14
晕~~~啥意思????
离线hy6210cs
只看该作者 9 发表于: 2007-02-14
有点看不懂呀~~~~
快速回复
限100 字节
 
上一个 下一个