怎么做自己的网站后台教程,中国移动网站官网,哈尔滨自助建站软件,搭配网站开发的开题报告题目#xff1a;根据用户输入的行数n打印空心三角形#xff0c;下图分别为n3、n4、n5和n10的效果图 第一步#xff1a;观察效果图
输入的行数为3#xff0c;打印结果就有3行#xff1b;输入的行数为4#xff0c;则打印结果就有4行#xff1b;以此类推#xff0c;输入的…题目根据用户输入的行数n打印空心三角形下图分别为n3、n4、n5和n10的效果图 第一步观察效果图
输入的行数为3打印结果就有3行输入的行数为4则打印结果就有4行以此类推输入的行数为n则打印n行第一个图第一行打印1颗星第二行打印2颗星第三行打印3颗星第二个图第一行打印1颗星第二行打印2颗星第三行打印2颗星且两颗星中间有一个空格所以第三行是打印了3个分别是星号、空格、星号第四行打印了4颗星。第三个图第一行打印1颗星第二行打印2颗星第三行打印2颗星且两颗星中间有一个空格所以第三行是打印了3个分别是星号、空格、星号第四行打印了2颗星且两颗星中间有2个空格所以第四行打印了4个分别是星号、空格、空格、星号第5行打印了5颗星第四个图第一行打印1颗星第二行打印2颗星第3~9行均打印2颗星如果把行数记为n,,则每行中两颗星号之间的空格数分别是n-2。
第二步设计解决方案与实现
首先打印的图形的行数需要用户进行输入故首先设计有一个数据活动传输数据给自定义活动。 自定义活动用于打印空心三角形
根据观察到的现象发现每个图形的第一行打印1颗星第二行打印2颗星最后一行打印的星号数和输入的行数相等。
其余的行数打印的星号数均为2分别在所在行的第一个位置和最后一个位置其他的位置打印空格。
如果将行数i从0开始计数则第一行是i0时表示第一行此时需要打印1颗星第二行是i1,此时需要打印2颗星所以打印的星号数刚好可以通过行数i1计算所得。当i外部输入的行数时此时打印的星号数等于行数由于行数从0开始计数而外部传入的行数是从1开始计数的所以i外部行数-1时表示是最后一行了需要打印外部行数这么多颗星。 由于要打印1颗星、打印2颗星甚至是n颗星所以创建一个自定义活动用于打印n颗星之前的讲解中曾多次提到具体思考不再讲解 刚刚已经考虑了第一行第二行、第n行。还有3~n-1行的每一行打印这些行有一个特点每行均有两颗星分别在该行的第一个位置和最后一个位置其余位置均为空格。所以需要单独写一个自定义活动来进行处理。 用变量j来标记某一行的位置则j0和jn时分别表示该行的第一个位置和最后一个位置该位置上需要打印的是星号。其余位置需要打印的是空格。
所以需要将每行的每一个位置上应该打印的进行拼接直到循环结束把一行的所有需要打印的数据拼接完成后形成星号空格可能有多个星号的形式再进行打印。
第三步测试
输入10测试 输入20测试