Pap*_*bad 3 assembly x86-64 nasm yasm
我需要获得以下输出:
*
**
***
****
*****
******
*******
********
*********
**********
Run Code Online (Sandbox Code Playgroud)
所以它的10行,而我的星星将从1开始到10。
目前我得到:
**********
***********
************
*************
**************
***************
****************
*****************
******************
*******************
********************
Run Code Online (Sandbox Code Playgroud)
我的代码:
*
**
***
****
*****
******
*******
********
*********
**********
Run Code Online (Sandbox Code Playgroud)
我尝试了又尝试了又尝试了,但是我无法获得所需的东西。
由于所有这些push和,我似乎无法找到一种将行与星线分开的方法pop。
老实说,我对此不太了解。有人告诉我,执行循环需要它们,但是我不确定为什么要在函数star中调用外部循环。
我找不到任何的组合push和pop奏效。我不断得到很多星,或者每行一颗星,或者只有一颗星。
我真的不知道要更改哪些位并保持不变。我能够获得所需的输出,但是输出从未停止增加。
我能够得到从10颗星开始下降到1颗星的输出,但是从来没有我想要的。
我究竟做错了什么?我该怎么办?
第一行有10颗星,因为您正在[trianglerows]内部循环中使用。我确定您打算使用[trianglesize](当前您没有在任何地方使用)。然后down_triangle,您需要再次增加,[trianglesize]而不是[trianglerows]。最后,[trianglesize]对于第一行中的1星,您可能希望以1而不是0开头。
另外,请确保按照以下评论中的Michael Petch所述纠正您的内存使用情况,否则您的变量将因为共享相同的内存而被破坏。