| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1120 人关注过本帖
标题:大家来做一条数学编程
只看楼主 加入收藏
熊猫英英
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2005-12-8
收藏
 问题点数:0 回复次数:12 
大家来做一条数学编程

有一条算式84 _ 6 _ 10 _ 8 _ 10 _ 2 = 50 ,其运算符并不知道(只有+ - × ÷四种运算符,下滑线是符号的位置),要求编写一个程序把运算符找出来?请问各位高手有办法吗?答案曰后公布!

[此贴子已经被作者于2005-12-8 18:31:11编辑过]

搜索更多相关主题的帖子: 数学 
2005-12-08 17:59
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
收藏
得分:0 

没有括号吧?
那最后那个2后面怎么还有一个运算符啊?


天行健,君子以自强不息!!QQ:68660681
2005-12-08 18:09
熊猫英英
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2005-12-8
收藏
得分:0 
以下是引用maoguoqing在2005-12-8 18:09:00的发言:

没有括号吧?
那最后那个2后面怎么还有一个运算符啊?

刚才打错了,不好意思。

2005-12-08 18:32
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
收藏
得分:0 

#include<stdio.h>
#include<math.h>
int N;
float date0[6]={84,6,10,8,10,2},date[6];
char ch0[5],ch[5];

void pro(int i,char chr)
{
int j;
switch(chr)
{
case '*':date[i]=date[i]*date[i+1];break;
case '/':date[i]=date[i]/date[i+1];break;
case '+':date[i]=date[i]+date[i+1];break;
case '-':date[i]=date[i]-date[i+1];break;
}
for(j=i;j<N-1;j++) ch[j]=ch[j+1];
i=i+1;
for(;i<N;i++) date[i]=date[i+1];
N=N-1;
}

void main()
{
int j1,j2,j3,j4,j5,j,yes,yes1,i;

char a[4]={'+','-','*','/'};

for(j1=0;j1<4;j1++)
{ch0[0]=a[j1];
for(j2=0;j2<4;j2++)
{ch0[1]=a[j2];
for(j3=0;j3<4;j3++)
{ch0[2]=a[j3];
for(j4=0;j4<4;j4++)
{ch0[3]=a[j4];
for(j5=0;j5<4;j5++)
{ch0[4]=a[j5];
for(j=0;j<5;j++) ch[j]=ch0[j];
for(j=0;j<6;j++) date[j]=date0[j];
N=5;
while(N!=0)
{
yes=1;i=0;
while((i<N)&&(yes))
{
if (ch[i]=='*') {pro(i,ch[i]);yes=0;break;}
if (ch[i]=='/') {pro(i,ch[i]);yes=0;break;}
i=i+1;
}
i=0;yes1=1;
if(yes)
while((i<N)&&(yes1))
{
if(ch[i]=='+') {pro(i,ch[i]);yes1=0;break;}
if(ch[i]=='-') {pro(i,ch[i]);yes1=0;break;}
i=i+1;
}
}
if(date[0]==50)
{ for(j=0;j<5;j++) {printf("%.0f",date0[j]);printf("%c",ch0[j]);}
printf("%.0f",date0[5]);printf("=50");
printf("\n");
}
}
}
}
}
}
}

运行结果 84*6/10-8/10/2=50


天行健,君子以自强不息!!QQ:68660681
2005-12-08 22:45
等待
Rank: 1
等 级:新手上路
帖 子:173
专家分:0
注 册:2005-12-1
收藏
得分:0 
高手

2005-12-08 22:50
qyzleni
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2005-12-8
收藏
得分:0 
强!!!!!!!!!!!!!!

可惜我是个菜!!!!
2005-12-08 23:15
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
有一点不敢确定,楼主这算式中例如有10/8,等于1(程序结果),还是按小学的算法等于1.25?

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2005-12-09 03:06
lint81
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-12-9
收藏
得分:0 
上面的问题问得好呀?如在c 中上面的结果应该是不对的呀?
2005-12-09 08:35
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
收藏
得分:0 

数学问题自然是数学计算
如果按计算机来的,我干嘛
把那几个数定义为float,我为什么不定义为int 呢?


天行健,君子以自强不息!!QQ:68660681
2005-12-09 12:57
百事可乐
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2005-12-8
收藏
得分:0 

程序写的好复杂哦,!!!看不懂


2005-12-09 16:01
快速回复:大家来做一条数学编程
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036562 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved