第一章 基本语法-7循环(while)
来源:互联网 发布:angelababy 心机知乎 编辑:程序博客网 时间:2024/06/10 17:40
while循环语句也是比较常用的,它的格式
while(条件){
满足条件执行
}
相对来说,当不知道要循环多少次的时候可以使用此循环方法。它与for循环可以互相转化
例如你想输入一个数,每次对它整除2,看看除几次之后他会等于0;这样,你就可以使用while循环,如下格式:
while(a!=0){
a=a/2;
次数+1;
}
当然也可以使用for循环来做,格式如下:
for(int 次数=0;a!=0;次数++){
a=a/2;
}
实例1:输入一个数,判断它是不是素数。
素数概念:只有1和它本身两个约数的大于1的自然数。
分析:根据素数的概念,对于一个数n,可以检测它在2~n-1范围内有没有约数,有的话则是合数,没有则是素数。
进一步分析,根据上一篇求约数的文章,我们知道,只有检测2~根号N+1范围内没有约数即可;所以代码可以这样写
for(int i=2;i<=根号n;i++){
if(n%i==0){
则i是n的约数,即n是合数,不用再循环了
跳出循环
}
}
本篇学习while,所以我们使用while来写:
int i=2;
bool tag = false;
while(n%i!=0 && i<=根号n){
i++;
}
if (i > sqrt(n)) {
//是素数
tag = true;
}
代码:
#include<iostream>#include <math.h>using namespace std;int main() {int n;int i = 2;bool tag = false;cout<<"n=";cin >> n;//for (i = 2; i <= sqrt(n); i++) {//if (n % i == 0) {////是合数//tag = false;//break;//}//}//if (i > sqrt(n)) {////是素数//tag = true;//}while(n%i!=0&&i <= sqrt(n)){i++;}if (i > sqrt(n)) {//是素数tag = true;}if (tag) {cout << n << "是素数";}else{cout << n << "是合数";}return 0;}
例题2:输出100以内的所以素数
在上述程序的基础上加上一层循环,此外由于大于2的素数不可能是偶数,所以循环的时候可以跳过偶数
for(int n=3;n<100;n=n+2){
里面写上上面判断方法即可
}
- 第一章 基本语法-7循环(while)
- 第一章 基本语法-9循环(do while)根据公式求Pi的值
- 第一章 基本语法-5循环(for)
- Shell脚本的基本语法(一) if判断、for循环、while循环和until循环
- swift基本语法(总结提炼版)之006 Swift之 while循环
- while循环的语法
- 第一章 基本语法-6循环(for)练习 求一个数的所有约数
- 第一章 基本语法-8循环 输出水仙花数
- 第一章 scala 基本语法
- 第一章:HTML基本语法
- Java的基本语法:if语句、for循环、while循环嵌套
- java学习之路 之 基本语法-程序流程控制-循环结构-while循环练习题
- Python详解(一)Python的基本语法,简单数据类型,和while,for循环控制,ifesle控制
- 【Python语法笔记】while循环
- 6.Javascript语法-循环语句while循环
- while循环的基本用法
- 第一章.Object-c基本语法
- 第一章 基本语法-1 输入输出
- mybatis一对多增、删、改
- linux几种清空文件内容的方法
- Open Source BI Projects
- 海康多视频监控
- Condition variables in Golang difference between Signal and Broadcast
- 第一章 基本语法-7循环(while)
- 新的开始
- [php]通过http post发送json数据
- LeetCode[Math]----Pow(x, n)
- PL/SQL连接oracle
- Linux服务器:Date命令修改系统时间
- oc的内存管理初级
- JAVA 集合的详解(转)
- Android的Ui高级控件