24小时热门版块排行榜    

查看: 1829  |  回复: 9

zyj8119

木虫 (著名写手)

[交流] 【求助】为什么我这个程序编译都没有问题,就是运行不出来?【已完结】 已有5人参与

#include
#include
#include
using namespace std;
class sdet
{
private:
        int n;
        double **a,det;
public:
        sdet(int nn)
        {
                int i;
                n=nn;
                a=new double * [n];
                for(i=0;i=new double[n];
        }
        void input();
        void a_det();
        void output();
        sdet()
        {
                int i;
                for(i=0;i;}
                delete[]a;
        }
};

        void sdet::input()
        {
                int i,j;
                char str1[20];
                cout<<"\n 输入文件名:";
                cin>>str1;
                ifstream fin(str1);
                if(!fin)
                {cout<<"\n不能打开这个文件"<                 for(i=0;i                         for(j=0;j>a[j];
                        fin.close();
        }

        void sdet::a_det()
        {
                int i,j,k,is,js;
                double f,q,d;
                f=1.0;det=1.0;
                for(k=0;k<=n-2;k++)
                {
                        q=0.0;
                        for(i=k;i<=n-1;i++)
                        for(j=k;j<=n-1;j++)
                        {
                                d=fabs(a[j]);
                                if(d>q){q=d;is=i;js=j;}
                        }
                        if(q+1.0==1.0)det=0.0;
                        else
                        {
                                if(is!=k)
                                {
                                        f=-f;
                                        for(j=k;j<=n-1;j++)
                                        {
                                                d=a[k][j];a[k][j]=a[is][j];a[is][j]=d;
                                        }
                                }
                                if(js!=k)
                                {
                                        f=-f;
                                        for(j=k;j<=n-1;j++)
                                        {
                                                d=a[js];a[js]=a[k];a[k]=d;
                                        }
                                }
                                det=det*a[k][k];
                                for(i=k+1;i<=n-1;i++)
                                {
                                        d=a[k]/a[k][k];
                                        for(j=k+1;j<=n-1;j++)
                                        {
                                                a[j]=a[j]-d*a[k][j];
                                        }
                                }
                        }
                }
                det=f*det*a[n-1][n-1];
        }

        void sdet:utput()
        {
                char str2[20];
                cout<<"\n输入文件名:";
                cin>>str2;
                ofstream fout (str2);
                if(!fout)
                {cout<<"\n不能打开这个文件"<                 fout<                 cout<                 fout.close();
        }

        void main()
        {
                sdet d(4);
                d.input();
                d.a_det();
                d.output();
        }


文件是这样的:
1   2   3   4

5   6   7   8

9  10  11  12

13  14  15  16

[ Last edited by nono2009 on 2010-6-28 at 12:56 ]
回复此楼
好好学习,天天向上。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

nono2009:建议今后用[code]代码[/code],就不会出现这种情况了。 2010-06-28 12:24:22
void sdet:: output()
好好学习,天天向上。
2楼2010-06-25 01:09:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

magic7004

金虫 (职业作家)

★ ★
zyj8119(金币+1):谢谢参与
resonant(金币+1):感谢参与:-) 2010-06-25 16:54:56
有什么问题呢?至少说下现象吧。
难道你去看医生,只说我病了,不说什么症状,医生就能给你诊断吗?
这年头,怎么那么多人连提问都不会
流氓不可怕,可怕的是流氓有文化,有文化又BH的流氓无敌~~!
3楼2010-06-25 08:41:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

alexissp

金虫 (正式写手)

干活的


zyj8119(金币+1):谢谢参与
引用回帖:
Originally posted by magic7004 at 2010-06-25 08:41:31:
有什么问题呢?至少说下现象吧。

这么贴谁受得了,呵呵
简单充实
4楼2010-06-25 09:53:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

就是运行的时候,出现本程序已经关闭啊,什么错误都没有贴出来。
好好学习,天天向上。
5楼2010-06-25 11:42:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

simthhuang

木虫 (小有名气)

★ ★
zyj8119(金币+1):谢谢参与
resonant(金币+1):感谢参与:-) 2010-06-25 16:54:43
d=a[js];a[js]=a[k];a[k]=d;
下标溢出,i = 4!!
一贯知足二目远眺三餐有节四季不懒五谷皆食六欲不张七分忍让八方交往九薄烟断十分坦荡
6楼2010-06-25 12:48:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

magic7004

金虫 (职业作家)


resonant(金币+1):感谢参与:-) 2010-06-25 16:54:26
zyj8119(金币+5):这么小,可以当做0了。 2010-06-25 21:26:51
不知道啊,我能运行的,结果是2.74078e-34
流氓不可怕,可怕的是流氓有文化,有文化又BH的流氓无敌~~!
7楼2010-06-25 15:56:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

simthhuang

木虫 (小有名气)


余泽成(金币+1):那就再加一分! 2010-06-27 21:34:22
看到版主给加了一分的面子上,再来回复下吧。
首先说明不清楚a_det()函数算法的含义。
其次是该函数肯定的是该算法存在下标溢出,如6楼所述。
最后,我在下标溢出前做了个简单的处理: i--;
运行所得的结果为:-5.24708e-014
一贯知足二目远眺三餐有节四季不懒五谷皆食六欲不张七分忍让八方交往九薄烟断十分坦荡
8楼2010-06-27 21:28:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangeil04

铁杆木虫 (著名写手)


zyj8119(金币+1):谢谢参与
zyj8119(金币+5):谢谢。。。 2010-06-27 22:15:26
d=a[js];a[js]=a[k];a[k]=d;
下标溢出,i = 4!!
9楼2010-06-27 21:33:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

magic7004

金虫 (职业作家)


zyj8119(金币+6):只有6个 2010-06-28 10:22:55
余泽成(金币+1):谢谢参与应助! 2010-06-28 20:43:32
for(i=k;i<=n-1;i++)
                        for(j=k;j<=n-1;j++)
                        {
                                d=fabs(a[j]);
                                if(d>q){q=d;is=i;js=j;}
                        }
这里第一个for后面貌似少了大括号了,所以后面会溢出。
流氓不可怕,可怕的是流氓有文化,有文化又BH的流氓无敌~~!
10楼2010-06-28 08:37:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zyj8119 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[博后之家] 广西大学-广州大学招聘博士后 欢迎广大优秀人才!!! +5 SCSIOyxguo 2026-09-03 8/400 2026-09-06 15:06 by 可爱小花朵
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 j5mmowWXNWxv 2026-09-05 3/150 2026-09-06 13:09 by eObJPa4gWmp6
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 j5mmowWXNWxv 2026-09-05 3/150 2026-09-06 13:09 by eObJPa4gWmp6
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 j5mmowWXNWxv 2026-09-05 4/200 2026-09-06 12:49 by eObJPa4gWmp6
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 j5mmowWXNWxv 2026-09-05 3/150 2026-09-06 12:49 by eObJPa4gWmp6
[找工作] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 jPDp0sc2B7zQ 2026-09-05 7/350 2026-09-06 11:40 by eObJPa4gWmp6
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 jPDp0sc2B7zQ 2026-09-05 7/350 2026-09-06 11:20 by eObJPa4gWmp6
[基金申请] 科研人应该花精力去思考如何解决问题,而不是去凝练问题 +10 瞬息宇宙 2026-09-01 19/950 2026-09-06 11:15 by jiangxuan2004
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 jPDp0sc2B7zQ 2026-09-05 8/400 2026-09-06 11:09 by eObJPa4gWmp6
[论文投稿] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 jPDp0sc2B7zQ 2026-09-04 8/400 2026-09-06 11:00 by eObJPa4gWmp6
[考研] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 jPDp0sc2B7zQ 2026-09-05 4/200 2026-09-06 07:20 by E1iiBLMU2XnD
[论文投稿] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +6 7ZYIEW2YWn72 2026-09-04 9/450 2026-09-06 06:00 by E1iiBLMU2XnD
[教师之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +8 CRJ0Aq2FtVH0 2026-09-03 15/750 2026-09-06 05:48 by E1iiBLMU2XnD
[硕博家园] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 jPDp0sc2B7zQ 2026-09-05 5/250 2026-09-06 02:39 by E1iiBLMU2XnD
[论文投稿] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 jPDp0sc2B7zQ 2026-09-05 5/250 2026-09-06 02:19 by E1iiBLMU2XnD
[基金申请] 面上没中,邀请各位路过的虫友分析一下分数 +12 jackleilei 2026-09-03 13/650 2026-09-05 18:10 by fireguard
[基金申请] 学科评审组评审是指会评吗? +6 瞬息宇宙 2026-08-31 9/450 2026-09-05 13:11 by haizai99
[硕博家园] Ei源刊怎么投 +4 Fengshun9711 2026-09-04 4/200 2026-09-04 19:30 by 研途知予
[硕博家园] 哈尔滨工业大学韩晓军教授课题组招收2027年硕士推免生及博士研究生 +3 灯灯灯灯DDDD 2026-09-03 3/150 2026-09-03 21:22 by 科研皮皮猪
[基金申请] 要骂人了,新模版改版就是要淡化问题凝练这种虚的东西,结果有个评委还在说凝练得不够 +9 瞬息宇宙 2026-08-31 17/850 2026-09-02 14:04 by anjeeshine
信息提示
请填处理意见