while循环是控制流语句的一种, 用于对代码块进行多次迭代。当布尔表达式的值为false时, while循环终止。
在while循环中, 首先将检查条件, 然后在语句主体执行之后。在此语句中, 将检查条件n + 1次, 而不是n次。
while循环的基本语法如下:
while (test_expression) {
statement
}
流程图
范例1:
v <- c("Hello", "while loop", "example")
cnt <- 2
while (cnt < 7) {
print(v)
cnt = cnt + 1
}}
输出
示例2:程序以查找数字的总和。
n<-readline(prompt="please enter any integer value: ")
please enter any integer value: 12367906
n <- as.integer(n)
sum<-0
while(n!=0){
sum=sum+(n%%10)
n=as.integer(n/10)
}
cat("sum of the digits of the numbers is=", sum)
输出
示例3:检查数字的程序是否为回文式。
n <- readline(prompt="Enter a four digit number please: ")
n <- as.integer(n)
num<-n
rev<-0
while(n!=0){
rem<-n%%10
rev<-rem+(rev*10)
n<-as.integer(n/10)
}
print(rev)
if(rev==num){
cat(num, "is a palindrome num")
}else{
cat(num, "is not a palindrome number")
}
输出
示例4:检查数字的程序是否为Armstrong。
num = as.integer(readline(prompt="Enter a number: "))
sum = 0
temp = num
while(temp > 0) {
digit = temp %% 10
sum = sum + (digit ^ 3)
temp = floor(temp / 10)
}
if(num == sum) {
print(paste(num, "is an Armstrong number"))
} else {
print(paste(num, "is not an Armstrong number"))
}
输出
例5:在数字中查找数字频率的程序。
num = as.integer(readline(prompt="Enter a number: "))
digit = as.integer(readline(prompt="Enter digit: "))
n=num
count = 0
while(num > 0) {
if(num%%10==digit){
count=count+1
}
num=as.integer(num/10)
}
print(paste("The frequency of", digit, "in", n, "is=", count))
输出
评论前必须登录!
注册