#@ 再看while循环的一个例子:求s = i + ii + iii + iii...ii,要求输入i和i的个数。代码如下:
print("请输入i的值:")
myi = readline()
i = parse(Int, myi)
print("请输入i的循环次数n:")
myn = readline()
n = parse(Int, myn)
s = 0
t = i
while n > 0
global s, t, i, n
s = s + t
i = i * 10
t = t + i
n = n - 1
end
println("i + ii + iii + iii...ii = ", s)
#@ include()函数来执行该源代码
include("E:\\学习空间\\JULIA\\PROJECT\\Julia编程从入门到实践\\第4章Julia循环结构\\while循环求ixn的和.jl")
# 请输入i的值:2
# 请输入i的循环次数n:10
# i + ii + iii + iii...ii = 2469135800
include("E:\\学习空间\\JULIA\\PROJECT\\Julia编程从入门到实践\\第4章Julia循环结构\\while循环求ixn的和.jl")
# 请输入i的值:3
# 请输入i的循环次数n:20
# i + ii + iii + iii...ii = 143548889617933798
#@ 小猴吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃一个;第二天早上将剩下的桃子吃掉一半,又吃了一个。以后每天早上都吃掉前一天剩下的一半多一个,到第10天早上想再吃时,发现只剩下一个桃子了。求第一天共摘了多少。代码如下:
day = 10
x1 = 0
x2 = 1
println("第10天的桃子数是:1")
while day = 1
global day, x1, x2
# 第一天的桃子数是第2天桃子数加1后的2倍
x1 = (x2 + 1) * 2
x2 = x1
day = day - 1
println("第",day,"天的桃子数是:",x1)
end
#@ include()函数执行源代码:猴子吃桃问题.jl
julia> include("E:\\学习空间\\JULIA\\PROJECT\\Julia编程从入门到实践\\第4章Julia循环结构\\猴子吃桃问题.jl")
# 第10天的桃子数是:1
# 第9天的桃子数是:4
# 第8天的桃子数是:10
# 第7天的桃子数是:22
# 第6天的桃子数是:46
# 第5天的桃子数是:94
# 第4天的桃子数是:190
# 第3天的桃子数是:382
# 第2天的桃子数是:766
# 第1天的桃子数是:1534
#@ while无限循环例子:只要while条件一直不为假False,就会一直循环下去,所谓死循环。代码如下:
myn = 1
while myn == 1
print("请输入字母、数字或字符串:")
mystr = readline()
println("您输入的字母、数字或字符串是:",mystr)
println()
end
#@ include()函数执行源代码;while死循环.jl
julia> include("E:\\学习空间\\JULIA\\PROJECT\\Julia编程从入门到实践\\第4章Julia循环结构\\while死循环.jl")
请输入字母、数字或字符串:1
您输入的字母、数字或字符串是:1
请输入字母、数字或字符串:2
您输入的字母、数字或字符串是:2
请输入字母、数字或字符串:
您输入的字母、数字或字符串是:
请输入字母、数字或字符串:3
您输入的字母、数字或字符串是:3
请输入字母、数字或字符串:4
您输入的字母、数字或字符串是:4
请输入字母、数字或字符串:54
您输入的字母、数字或字符串是:54
请输入字母、数字或字符串:5
您输入的字母、数字或字符串是:5
请输入字母、数字或字符串:6
您输入的字母、数字或字符串是:6
请输入字母、数字或字符串:
您输入的字母、数字或字符串是:
请输入字母、数字或字符串:67
您输入的字母、数字或字符串是:67
请输入字母、数字或字符串:7sad
您输入的字母、数字或字符串是:7sad
请输入字母、数字或字符串:asds
您输入的字母、数字或字符串是:asds
请输入字母、数字或字符串:ERROR: LoadError: InterruptException:
Stacktrace:
[1] poptaskref(::Base.InvasiveLinkedListSynchronized{Task}) at .\task.jl:564
[2] wait() at .\task.jl:591
[3] wait(::Base.GenericCondition{Base.Threads.SpinLock}) at .\condition.jl:104
[4] wait_readbyte(::Base.TTY, ::UInt8) at .\stream.jl:351
[5] #readuntil#512 at .\stream.jl:867 [inlined]
[6] #readuntil at .\none:0 [inlined]
[7] #readline#286(::Bool, ::typeof(readline), ::Base.TTY) at .\io.jl:383
[8] readline(::Base.TTY) at .\io.jl:383 (repeats 2 times)
[9] top-level scope at E:\学习空间\JULIA\PROJECT\Julia编程从入门到实践\第4章Julia循环结构\while死循环.jl:5
[10] include at .\boot.jl:328 [inlined]
[11] include_relative(::Module, ::String) at .\loading.jl:1094
[12] include(::Module, ::String) at .\Base.jl:31
[13] include(::String) at .\client.jl:431
[14] top-level scope at none:0
in expression starting at E:\学习空间\JULIA\PROJECT\Julia编程从入门到实践\第4章Julia循环结构\while死循环.jl:3