查看: 150  |  回复: 3
【悬赏金币】回答本帖问题,作者樱木三道将赠送您 100 个金币

樱木三道

新虫 (著名写手)

[求助] c++程序

程序中用到了map函数,现在想把map函数得到的结果保存到文件中,应该怎么编程(自己写的程序报错了)
CODE:
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include <map>
using namespace std;
map<float,float> g_mapdata;
file *fp = null;
void insert_map(float jie1,float jiao1)
       
{
       
        if (g_mapdata.find(jiao1) != g_mapdata.end() )
        {
                float jie = g_mapdata[jiao1];
                g_mapdata[jiao1] = jie + jie1;
        }else
                g_mapdata[jiao1]= jie1;
       
}
void print_map()
{
        file *fp = null;
        printf("打印全部\n");
        map<float,float>::iterator it=g_mapdata.begin();
        for(;it!=g_mapdata.end();++it)
                printf("%lf:%lf | ",it->first,it->second);

                printf("\n end \n");
        fp = fopen("test.txt", "a");  
    fprintf(fp, "%2.5f\n", it->first,it->second);  
    fclose(fp);
}
int main()

{
int n;
double a,b,c,d,e,f,jit,ji1,sum,jiw,xiangliangx,xiangliangy,zongjiao;
sum=0;
jiw=0;
while(1)
{
        printf("请输入坐标及两半径\n");

        scanf("%lf%lf%lf%lf%lf%lf",&a,&b,&c,&d,&e,&f);

        double x=fabs(a-c);

        double y=fabs(b-d);

        double j=sqrt(x*x+y*y);

        double h=e+f;

        if(j<h)

        {

        double a;

        a=(e*e+j*j-f*f)/(2*j*e);

        double ji=0;

        ji=acos(a);

        ji=ji/3.1415926*180;
        int jir=int(ji);
         
        ji=jir;
        jit= ji/180*3.1415926;
        n=ji/0.1;
        printf("与第一个圆的夹角%lf\n",ji);
        xiangliangx=c-a;
        xiangliangy=d-b;

        if(xiangliangy>0)
          if(xiangliangx>0)
                  zongjiao=atan(xiangliangy/xiangliangx);

          else
                  zongjiao=atan(-xiangliangy/xiangliangx)+3.1415926/2;

        else
           if(xiangliangx>0)
                  zongjiao=atan(xiangliangy/xiangliangx);
          else
                  zongjiao=atan(-xiangliangy/xiangliangx)-3.1415926/2;
         zongjiao = int(zongjiao/3.1415926*180);
         zongjiao=zongjiao/180*3.1415926;
        for(int i=1;i<n;i++)
        {
               
         double x1,x2,x3,jieg1,jieg2,jieg,b,jie0,jie1,jiao1,jiao2,jiao;
        b=jit/n;
        x1=1+tan(i*b)*tan(i*b);
        x2=-2*j;
        x3=j*j-f*f;
        jieg1=(-x2+sqrt(x2*x2-4*x1*x3))/(2*x1);
        jieg2=jieg1*tan(i*b);
        jieg=sqrt(jieg1*jieg1+jieg2*jieg2);

        jie0=(jieg-2);
        jiao1=(zongjiao+b*i)/3.1415926*180;
        jiao2=(zongjiao-b*i)/3.1415926*180;
        jiao=i*b/3.1415926*180;

        jie1=pow(jie0,1.5)*cos(i*b)*f;
        sum=sum+jie1;
        printf("输出a%d=%lf\n",i+1,jie1);
        printf("输出角a%d=%lf\n",i+1,jiao1);
        printf("输出角a%d=%lf\n",i+1,jiao2);
        insert_map(jie1,jiao1);
        }
        }
        else
        printf("两圆无交点");

        print_map();
       
}
printf("输出:%lf\n",sum);
system("pause");

return 0;

}

c++程序
~bq{)hn39rx]ky)fl02xt`1.png


c++程序-1
qq图片20181109120008.png

[ Last edited by jjdg on 2018-11-9 at 20:51 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

樱木三道

新虫 (著名写手)

有会的吗?
2楼2018-11-09 16:54:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

交大蓝胖子

新虫 (小有名气)

3楼2018-11-26 10:41:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

樱木三道

新虫 (著名写手)

引用回帖:
3楼: Originally posted by 交大蓝胖子 at 2018-11-26 10:41:12
有,现在还需要改吗

这个问题解决了,我有个新问题,也是关于map的,可以帮我去看看吗,我昨天发布的。

发自小木虫Android客户端
4楼2018-11-26 12:27:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 樱木三道 的主题更新
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 我觉得我的硕士读的真心失败 +18 171401951 2019-01-19 18/900 2019-01-20 09:15 by 。。。。@
[公派出国] 地质工程,岩土工程,求推荐 +3 雪上行者 2019-01-16 6/300 2019-01-20 08:06 by 小懒er8
[考研] 考研 +14 18789026 2019-01-17 14/700 2019-01-20 06:50 by 世界和平呀
[公派出国] 改革奖学金发放——奇葩中行银行卡 +15 般若朝颜 2019-01-14 22/1100 2019-01-20 05:01 by 邋里邋遢za
[文学芳草园] 远方where +5 红枫叶 2019-01-16 7/350 2019-01-20 02:48 by 红枫叶
[硕博家园] 过年了,征个男友吧,结婚为目的 +86 榴莲甜不甜 2019-01-16 125/6250 2019-01-19 16:34 by a09177959
[论文投稿] 能不能用一篇已发表文章中的两个图换另一个角度再写一篇小文章 +4 肖长江 2019-01-17 14/700 2019-01-18 22:42 by 肖长江
[考博] 考博 +7 若水maq 2019-01-18 8/400 2019-01-18 21:21 by 820591627
[硕博家园] 本人学渣!投了篇核心,已经发录用通知了。 +4 LIN_1015 2019-01-18 6/300 2019-01-18 19:19 by aaa45688123
[硕博家园] 。。。。。。。。 +10 ymsjxjjf 2019-01-18 21/1050 2019-01-18 09:41 by yyy1104
[电化学] 铁锂制浆 +4 二氟一氯甲烷 2019-01-17 4/200 2019-01-18 05:12 by tomkk88
[有机交流] 格氏试剂与苯酐的反应 40+5 不二周瑜 2019-01-15 15/750 2019-01-17 14:19 by 不二周瑜
[公派出国] 欧洲--比利时--新鲁汶大学--化学系Michael Singleton教授招博士 (金币+5) +4 cedefe 2019-01-16 4/200 2019-01-17 12:04 by bekate
[公派出国] 想去法国读研究生 +6 倩女离魂 2019-01-16 8/400 2019-01-17 11:00 by 倩女离魂
[论文投稿] 审稿人要求补实验,略微改变了培养条件,补出来后发现结果不一致 +5 信陵君魏 2019-01-15 12/600 2019-01-17 07:16 by yyw30000
[公派出国] 联培一年和两年哪个优势大? +4 ctsunflowers 2019-01-16 4/200 2019-01-17 00:27 by 广场舞大爷
[硕博家园] 请问各位男生们,如果你的老婆或者女友要出国很久,你们可以接受吗? +54 libra_9757 2019-01-15 77/3850 2019-01-16 23:22 by wlq1533
[基金申请] 系统下午开放在线填写 +5 shice060 2019-01-16 7/350 2019-01-16 19:38 by shice060
[博后之家] 德州学院诚聘英才 +7 dzxylxm 2019-01-14 12/600 2019-01-16 16:59 by dzxylxm
[硕博家园] 各位好 +3 Aliceyonggan 2019-01-16 3/150 2019-01-16 10:12 by hdddage
信息提示
请填处理意见