Javascript print square using for loop and conditional statement only

后端 未结 4 1631
你的背包
你的背包 2021-01-24 22:13

Just started my uni course, struggling a little with javascript. I have been asked to display a square using any character, however, the solution must combine for loops and if s

4条回答
  •  轻奢々
    轻奢々 (楼主)
    2021-01-24 22:19

    You could use nested for loops and take a line break after each filled line.

    function print(s) { document.getElementById('out').innerHTML += s; }
    function println(s) { document.getElementById('out').innerHTML += s + '\n'; }
    
    var size = 5,
        i, j;
    
    for (i = 0; i < size; i++) {
        for (j = 0; j < size; j++) {
            print("*");
        }
        println("");
    }

    Single loop with a check if i is unequal to zero and if the remainder is zero, then add a line break.

    Using:

    • === identity/strict equality operator checks the type and the value, for example if both are numbers and if the value is the same,

    • !== non-identity/strict inequality operator it is like above, but it checks the oposite of it,

    • % remainder operator, which returns a rest of a number which division returns an integer number.

    • && logical AND operator, which check both sides and returns the last value if both a truthy (like any array, object, number not zero, a not empty string, true), or the first, if it is falsy (like undefined, null, 0, '' (empty string), false, the oposite of truthy).

    function print(s) { document.getElementById('out').innerHTML += s; }
    function println(s) { document.getElementById('out').innerHTML += s + '\n'; }
    
    var size = 5,
        i;
    
    for (i = 0; i < size * size; i++) {
        if (i !== 0 && i % size === 0) {
            println("");
        }
        print("*");
    }

提交回复
热议问题