Matlab | 您所在的位置:网站首页 › stata倒序排列abcdef › Matlab |
最近for循环一直不是很清楚,看了些例题,记录一下。 (1)例:输出1~100的和 sum = 0; for i = 1:100 sum = sum + i; end sum(2)例:输出1到10之间的奇数和 sum = 0; for i = 1:2:100 sum = sum + i; end sum(3)对向量的遍历 A = rand(2,4); for i = A i end(4)计算并输出1到10之间所有整数的平方 for i = 1:10 square = i^2; disp(square); end(5)输出一个由字母'A'重复5次构成的字符串 str = ''; for i = 1:5 str = [str, 'A']; end disp(str);(6)输出一个由1到5之间的整数构成的向量 vec = []; for i = 1:5 vec = [vec, i]; end disp(vec);(7)计算并输出1到10之间所有偶数的平方根 for i = 2:2:10 sqrt_val = sqrt(i); disp(sqrt_val); end(8)计算并输出1到10之间所有奇数的累加乘积 product = 1; for i = 1:2:9 product = product * i; end disp(product);(9)输出一个倒序的由10到1之间所有整数构成的向量 vec = []; for i = 10:-1:1 vec = [vec, i]; end disp(vec);(10)输出一个由斐波那契数列的前10个数构成的向量 fib = [1, 1]; for i = 3:10 fib(i) = fib(i-1) + fib(i-2); end disp(fib);开始上点难度了哦~ (11)找出一个给定向量中所有大于平均值的元素,并将它们存储在另一个向量中: vector = [3, 8, 4, 2, 10, 6]; avg = mean(vector); result = []; for i = 1:length(vector) if vector(i) > avg result = [result, vector(i)]; end end disp(result);(12)嵌套循环:生成一个九九乘法表 for i = 1:9 for j = 1:9 product = i * j; fprintf('%d x %d = %d\n', i, j, product); end end(13)编写一个程序,计算Fibonacci数列的前20个数字 fib = zeros(1,20); fib(1) = 0; fib(2) = 1; for i = 3:20 fib(i) = fib(i-1)+fib(i-2); end disp(fib);(14)编写一个程序,找出一个给定矩阵中每行的最大值,并计算它们的平均值: matrix = [4, 2, 7; 9, 5, 1; 3, 8, 6]; max_values = zeros(1, size(matrix, 1)); for i = 1:size(matrix, 1) max_values(i) = max(matrix(i, :)); end avg = mean(max_values); disp(avg);(15)编写一个程序,生成帕斯卡三角形的前10行: triangle = zeros(10); for i = 1:10 for j = 1:i if j == 1 || j == i triangle(i, j) = 1; else triangle(i, j) = triangle(i-1, j-1) + triangle(i-1, j); end end end disp(triangle); |
CopyRight 2018-2019 实验室设备网 版权所有 |