接上文
我们留了一道题
A+B Problem
这是洛谷的P1001
大家都做过的
这题很简单,主要的点就在于那个“+”
#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
int a,b;
cin >> a >> b;
cout << a + b << endl;
return 0;
}
TA是算术运算符
在C++中用来计算两个数字的和
还有一些算术运算符(下面说的运算方法均是整数运算)
“-”:计算两个数的差
“*”:计算两个数的乘积
“/”:计算两个数的商(取整)
计算机就可以帮我们解决一些计算的问题
大家看到“/”的计算方法,有没有输出不取整的结果的办法
那我们就要用到强制类型转换了
比如说你要计算5/3
要输出1.666666
我们可以用*1.0的方法来改变类型
也可以直接在前面写(double) 注意括号!!!!
那你要输出小数点的后几位呢
用printf
printf("%.3lf\n");
这样是输出三位小数
你可以改变那个数字
也就是lf前面那个
可以改一下自己的计算结果的小数点后几位的输出
那么是计算,一定就有优先级了
跟普通的计算一样
*,/ > +,-
如果你想先加减后乘除
就要用到括号了
注意一下,括号不像数学中的那样一层层的{[()]}
而是只有小括号,从内部到外部一层层算
在C++里算这样一个式子
9*(3*(7*(6*8+3)+7)+14)+34
结果就是9988
我们来层层分析
第一层去掉
9*(3*(7*51+7)+14)+34
第二层去掉
9*(3*364+14)+34
第三层去掉
9*1096+34
最后就是9988
那么现在让你算(a*(b*c+d)+e*(f+g*h))
你会了吗
/*
你写完了吗?
别骗我
你真的要先自己写
写完了再来对
OK?(如果你没有写完,写完再往下看)
如果你看到这里了
我相信你
但你不要骗你自己
这是一个练习的过程
你不能跳过他
如果你看到这里了
那你肯定写完了
那你就来对一下吧
*/
#include<bits/stdc++.h>
using namespace std;
#define int long long
int a,b,c,d,e,f,g,h;
signed main(){
cin >> a >> b >> c >> d >> e >> f >> g >> h;
printf("%lld\n",(a * (b * c + d) + e * (f + g * h)))
return 0;
}
//完结撒花qwq
好了,那么这期先到这里了
请看到这里的你来投个票,下期讲讲啥
我会更新前两个选项
886
求点赞,关注,收藏!!!!