Ruby嵌套直到循环带有示例

嵌套直到循环

类似for,while和do ... while,直到嵌套循环也可以嵌套以满足特定目的。在这种嵌套中,两个直到循环在组合中起作用,这样一来,首先触发外循环,从而执行内循环。只要内部循环不成立,就不会调用外部的直到循环。这是一种Entry控制循环,它仅意味着首先处理外部布尔表达式;然后进行处理。如果为假,则指针将移至内部循环以检查内部条件。整个执行将以相同的方式进行。

语法:

    until conditional [do]
        until conditional [do]
            # 要执行的代码
        end       
        # 要执行的代码
    end

范例1:

=begin 
Ruby program to find the sum of numbers lying 
between two limits using nested until loop
=end

puts "Enter the Upper limit"
ul=gets.chomp.to_i
puts "Enter the Lower limit"
ll=gets.chomp.to_i

until ul==ll
	num=ul
	temp=ul
	sum = 0

	until num==0
		#直到循环的实现
		rem=num%10
		num=num/10
		sum=sum+rem
	end

	puts "The sum of #{temp} is #{sum}"
	ul=ul-1
end

输出结果

Enter the Upper limit
1000
Enter the Lower limit
980
The sum of 1000 is 1
The sum of 999 is 27
The sum of 998 is 26
The sum of 997 is 25
The sum of 996 is 24
The sum of 995 is 23
The sum of 994 is 22
The sum of 993 is 21
The sum of 992 is 20
The sum of 991 is 19
The sum of 990 is 18
The sum of 989 is 26
The sum of 988 is 25
The sum of 987 is 24
The sum of 986 is 23
The sum of 985 is 22
The sum of 984 is 21
The sum of 983 is 20
The sum of 982 is 19
The sum of 981 is 18

范例2:

图案打印:打印以下图案

    0
    01
    012
    0123
    01234

码:

=begin 
Ruby program to print the given pattern.
=end

num=0

until (num==6)
	j=0
	until(j==num)
		print j
		j+=1
	end
	puts ""
	num+=1
end