求从1到100中所有不能被2整除被5整除余2的整数...

1至100这100个正整数中,不能被2或5整除的数的个数
去掉偶数剩下50个,再去掉能被5整除的10个,剩下40个.
为您推荐:
其他类似问题
40个能被2整除的有50个,不能被2整除能被5整除的有10个,剩下40个不能被2或5整除
扫描下载二维码100以内所有被5除余1的自然数的和是______.
陌陌陌卤柏1
解;100以内所有被5除余1的自然数成一个公差为5的等差数列:即1,6,11,…96,它们的和为:1+6+11+…96=(1+96)×[(96-1)÷5+1]÷2=97×20÷2,=970.故答案为:970.
为您推荐:
其他类似问题
100以内所有被5除余1的自然数为1,6,11,…96,这些数构成一个公差为5的等差数列,由此根据高斯求和公式即能求出它们的和是多少.
本题考点:
数字问题.
考点点评:
自然数中所有被n(n为不零的自然数)除余1的自然数构成一个公差为n的等差数列.
楼上肯定做错了!自然数之和怎么可能是小数?997.5肯定错了
6+ 11 +16 +21 +26+ 31 +36+41+46+51+56+61+66+71+76+81+86+91+96=(6+96)x19÷2=105x19÷2=997.5个数是100÷5-1=19个
扫描下载二维码我们思考一下怎么写这个程序。流程如下:
解释一下上面的流程图。
首先声明变量a=0;
判断一下a是否在0到100;
如果不在,则结束,如果在的话,我们再判断一下a是否能被3整除或者被5整除余2;
如果上一步真,则输出a,并且执行i++,然后循环至第二步,如果上一步为假,那么直接执行i++;
直至程序结束。
以上的过程不是很难理解,多看几次就明白了。问题在于我们之前学的知识无法解决这里的判断或者循环问题。今天我们就来学流程控制。
判断或者选择(if&& esle)
先来介绍其语法格式,常见的有两种:
if (这里写逻辑表达式)
当上面逻辑表达式结果为真的时候,执行这里的代码
当上面逻辑表达式结果为假的时候,执行这里的代码
if (这里写逻辑表达式1)
当上面逻辑表达式1结果为真的时候,执行这里的代码
if (这里写逻辑表达式2)
当上面逻辑表达式2结果为真的时候,执行这里的代码
当上面逻辑表达式结果全部为假的时候,执行这里的代码
当然,还有其他的变种,也就是灵活运用的结果。例如第一种的嵌套,还有就是只有if语句,省略了else语句。
下面我们写几个例子:
例1& 给定一个数,判断是否是偶数还是奇数,并输出结果
这里我们先不通过键盘输入数,先写死到程序里,例如下面的程序:
int a = 7;
if (a % 2 == 0)
Console.WriteLine("这个数是偶数");
Console.WriteLine("这个数是奇数");
分析:给定这个数后,我们要先判断是不是偶数。(怎么判断呢,当然是除2取余数啦)我们把条件判断写在if后面的圆括号里面。如果是真的,那就执行if下面的花括号内的内容,也就是输出这个数是偶数,否则执行else部分,输出这个数是奇数(除了奇数不就是偶数么,莫非你还想说有小数?)
例2 给定一个数,判断能否被3整除,如果能,则输出可以被3整除,如果能被5整除,再输出可以被5整除,否则输出此数既不是3的倍数,也不是5的倍数
先来分析一下,这个题需要判断两次,第一次是3的倍数,第二次是5的倍数,很显然,需要if的第二种格式。代码如下:
int a = 7;
if (a % 3 == 0)
Console.WriteLine("这个数是3的倍数");
if (a % 5 == 0)
Console.WriteLine("这个数是5的倍数");
Console.WriteLine("这个数是既不是3的倍数也不是5的倍数");
我想你写的和我的是一样的。
从上面两个例子看出来,选择或者判断流程不是很难,只要给定判断条件,就可以进行判断了。
思考下面的一个问题,学校里在进行成绩分级时通常这么做,如果你是优,则代表你是90-100的分数段,如果是良,则80-89,中70-79,及格60-69,不及格60一下,那么我们怎么用程序表达呢?
你是否想用第二种形式的呢?但是我觉得还是太麻烦,得写5个if,是否有简单的写法呢?先看我给出的程序:
string score = "中";
switch (score)
case "优": Console.WriteLine("你的成绩在90-100");
case "良": Console.WriteLine("你的成绩在80-89");
case "中": Console.WriteLine("你的成绩在70-79");
case "及格": Console.WriteLine("你的成绩在60-69");
case "不及格": Console.WriteLine("你的成绩在0-59");
default: Console.WriteLine("你给的等级不存在!");
哈哈,貌似也不简单。来吧,分析一下这个语法结构。(由于等级无法用整数变量表示,所以我用的字符串类型,string,string赋值时需要双引号,你还记得这点么?)
首先是witch关键字,后面有个括号,这个括号里不能放if里的那种条件表达式,这里只能是一个变量,而后面的花括号里,才要进行判断。
花括号里优三个关键字,case,break和default。case后面跟的是一个值,也就是上面变量的值,如果那个值等于这个,则执行后面的语句,然后紧跟break,跳出判断。
最后的default是在前面的值都无法匹配时执行的。当然,你可以省略此句。
所以switch的判断适合这种定值匹配的,也就是说变量的值是固定个数的,这就是和if的区别。
if和?:运算符的区别
还记得上节中的三元运算符找最大值得例子么,我们可以用if改写。这里有个结论,所有的三元运算符都可以用if改写,反之不成立。改写的代码如下:
int a = 2;
int b = 3;
//max = a & b ? a :这是我们上节中的写法
if (a & b)
今天的写法更清晰明了吧。但是三元运算符更简洁。至于选哪种,你自己决定吧。
本节的内容不多,但是难度大。主要是对程序运行过程的理解,和语法的记忆。循环下节中介绍。
判断选择的两种写法(if&else&)
定值判断(switch&case&)
三元运算符和if的相互转化
a=5,b=4,c=7,用程序判断这三边是否可以组成三角形,如果可以则输出能组成三角形,如果不能,则输出不能组成三角形。(两边之和大于第三边,两边之差小于第三边)
已知点(3,-5),用程序判断其在直角坐标系的第几象限,并输出结果。
a=5,b=4,c=7,找出最大值输出。
已知一元二次方程的系数为A=10,B=-3,C=4,如果方程有实数根,则求出结果,如果没有则输出无实数根。
阅读(...) 评论()从1~100中任取一个数,求取到的整数能被5或9除的概率.
100÷5=20100÷9=11余1100÷45=2余10能被5整除的,有20个能被9整除的,有11个能同时被5和9整除的,有2个能被5或9整除的,有:20+11-2=29个所求概率为:29/100
为您推荐:
其他类似问题
扫描下载二维码

我要回帖

更多关于 所有不能被2整除 的文章

 

随机推荐