ループ

メモ


くりかえし ( 回数かいすう )

メモ

構文こうぶん

ブロック
loops-repeat.png
JavaScript
for (let index = 0; index < 4; index++) {
    // 処理
}
MakeCode Python
for index in range(4):
    pass  # 処理

れい

ブロック
loops-repeat-ex.png
JavaScript
input.onButtonPressed(Button.B, function () {
    for (let index = 0; index < 4; index++) {
        basic.showNumber(randint(0, 9))
    }
})
MakeCode Python
def on_button_pressed_b():
    for index in range(4):
        basic.show_number(randint(0, 9))
input.on_button_pressed(Button.B, on_button_pressed_b)
実行結果じっこうけっか
ボタンBをすと、 ランダムな数字すうじ (0~9) が4かい表示ひょうじされる
れい
loops-num-2-run.png
loops-num-7-run.png
loops-num-1-run.png
loops-num-8-run.png

れい -

ブロック
loops-repeat-nest-ex.png
JavaScript
input.onButtonPressed(Button.B, function () {
    for (let index = 0; index < 2; index++) {
        for (let index = 0; index < 3; index++) {
            basic.showNumber(randint(0, 9))
        }
    }
})
MakeCode Python
def on_button_pressed_b():
    for index in range(2):
        for index2 in range(3):
            basic.show_number(randint(0, 9))
input.on_button_pressed(Button.B, on_button_pressed_b)
実行結果じっこうけっか
ボタンBをすと、 ランダムな数字すうじ (0~9) が6 (3 x 2)かい表示ひょうじされる
れい
loops-num-3-run.png
(省略しょうりゃく)
loops-num-7-run.png

もし~ならくりかえし

メモ

構文こうぶん

ブロック
loops-while.png
JavaScript
while (false) {
    // しょり
}
MakeCode Python
while False:
    pass  # しょり

れい

ブロック
loops-while-ex.png
JavaScript
input.onButtonPressed(Button.B, function () {
    x = 1
    while (x <= 3) {
        basic.showNumber(x)
        x += 1
    }
})
MakeCode Python
def on_button_pressed_b():
    global x
    x = 1
    while x <= 3:
        basic.show_number(x)
        x += 1
input.on_button_pressed(Button.B, on_button_pressed_b)
実行結果じっこうけっか
ボタンBをすと、 1~3の数字すうじ表示ひょうじされる
loops-num-1-run.png
loops-num-2-run.png
loops-num-3-run.png

変数へんすうを 0~N にえてくりかえす

メモ

構文こうぶん

ブロック
loops-for.png
JavaScript
for (let カウンター = 0; カウンター < 5; カウンター++) {
    // しょり
}
MakeCode Python
for カウンター in range(5):
    pass  # しょり

れい

ブロック
loops-for-ex.png
JavaScript
input.onButtonPressed(Button.B, function () {
    for (let x = 0; x <= 3; x++) {
        basic.showNumber(x + 5)
    }
})
MakeCode Python
def on_button_pressed_b():
    for x in range(4):
        basic.show_number(x + 5)
input.on_button_pressed(Button.B, on_button_pressed_b)
実行結果じっこうけっか
ボタンBをすと、 5~8の数字すうじ表示ひょうじされる
loops-num-5-run.png
loops-num-6-run.png
loops-num-7-run.png
loops-num-8-run.png

れい -

ブロック
loops-for-nest-ex.png
JavaScript
let x1 = 0
let y1 = 0

input.onButtonPressed(Button.B, function () {
    for (let x = 0; x <= 1; x++) {
        x1 = x + 1
        for (let y = 0; y <= 1; y++) {
            y1 = y + 3
            basic.showNumber(x1 * y1)
        }
    }
})

MakeCode Python
x1 = 0
y1 = 0

def on_button_pressed_b():
    global x1, y1
    for x in range(2):
        x1 = x + 1
        for y in range(2):
            y1 = y + 3
            basic.show_number(x1 * y1)
input.on_button_pressed(Button.B, on_button_pressed_b)

実行結果じっこうけっか
ボタンBをすと、 数字すうじが4 (2 x 2)かい表示ひょうじされる
3:1 x 3
loops-num-3-run.png
4:1 x 4
loops-num-4-run.png
6:2 x 3
loops-num-6-run.png
8:2 x 4
loops-num-8-run.png

れい - 開始数かいしすう間隔かんかく変更へんこう

ブロック
loops-for-init-ex.png
JavaScript
let y = 0
input.onButtonPressed(Button.B, function () {
    for (let x = 0; x <= 2; x++) {
        y = x + 1
        y = y * 3
        basic.showNumber(y)
    }
})
MakeCode Python
y = 0

def on_button_pressed_b():
    global y
    for x in range(3):
        y = x + 1
        y = y * 3
        basic.show_number(y)
input.on_button_pressed(Button.B, on_button_pressed_b)
実行結果じっこうけっか
ボタンBをすと、 数字すうじ が 3 かい表示ひょうじされる
3:(0 + 1) x 3
loops-num-3-run.png
6:(1 + 1) x 3
loops-num-6-run.png
9:(2 + 1) x 3
loops-num-9-run.png

配列はいれつあたい変数へんすうれてくりかえす

メモ

構文こうぶん

ブロック
loops-for-of.png
JavaScript
let list: number[] = []
for (let 値 of list) {
    // しょり
}
MakeCode Python
list2: List[number] = []
for 値 in list2:
    pass  # しょり

れい

ブロック
loops-for-of-ex.png
JavaScript
let list2 : number[] = []

input.onButtonPressed(Button.B, function on_button_pressed_b() {

    list2 = [1, 3, 5, 7]
    for (let x of list2) {
        basic.showNumber(x)
    }
})
MakeCode Python
list2: List[number] = []

def on_button_pressed_b():
    global list2
    list2 = [1, 3, 5, 7]
    for x in list2:
        basic.show_number(x)
input.on_button_pressed(Button.B, on_button_pressed_b)
実行結果じっこうけっか
ボタンBをすと、 配列内はいれつない数字すうじ表示ひょうじされる
loops-num-1-run.png
loops-num-3-run.png
loops-num-5-run.png
loops-num-7-run.png

れい -

ブロック
loops-for-of-nest-ex.png
JavaScript
input.onButtonPressed(Button.B, function () {
    list1 = [4, 3]
    list2 = [2, 1]
    for (let x of list1) {
        for (let y of list2) {
            basic.showNumber(x * y)
        }
    }
})
let list2: number[] = []
let list1: number[] = []
MakeCode Python
def on_button_pressed_b():
    global list1, list2
    list1 = [4, 3]
    list2 = [2, 1]
    for x in list1:
        for y in list2:
            basic.show_number(x * y)
input.on_button_pressed(Button.B, on_button_pressed_b)

list2: List[number] = []
list1: List[number] = []
実行結果じっこうけっか
ボタンBをすと、 数字すうじが4 (2 x 2)かい表示ひょうじされる
8:4 x 2
loops-num-8-run.png
4:4 x 1
loops-num-4-run.png
6:3 x 2
loops-num-6-run.png
3:3 x 1
loops-num-3-run.png

~ミリびょうごとに

メモ

構文こうぶん

ブロック
loops-every-interval.png
JavaScript
loops.everyInterval(500, function () {
    // しょり
})
MakeCode Python
def on_every_interval():
    pass  # しょり
loops.every_interval(500, on_every_interval)

れい

ブロック
loops-every-interval-ex.png
JavaScript
loops.everyInterval(1000, function () {
    basic.showIcon(IconNames.Heart)
    basic.clearScreen()
})
MakeCode Python
def on_every_interval():
    basic.show_icon(IconNames.HEART)
    basic.clear_screen()
loops.every_interval(1000, on_every_interval)
実行結果じっこうけっか
1びょうごとに、ハートが点滅てんめつする
loops-every-interval-1-run.png
loops-every-interval-2-run.png

れい - 複数指定ふくすうしてい

ブロック
loops-every-interval-multi-1000-ex.png

loops-every-interval-multi-10000-ex.png
JavaScript
loops.everyInterval(1000, function () {
    basic.showIcon(IconNames.SmallHeart)
    basic.clearScreen()
})
loops.everyInterval(10000, function () {
    basic.showIcon(IconNames.Heart)
    basic.clearScreen()
})
MakeCode Python
def on_every_interval():
    basic.show_icon(IconNames.SMALL_HEART)
    basic.clear_screen()
loops.every_interval(1000, on_every_interval)

def on_every_interval2():
    basic.show_icon(IconNames.HEART)
    basic.clear_screen()
loops.every_interval(10000, on_every_interval2)
実行結果じっこうけっか
ボタンBをすと、 1 (1,000ミリ) びょうごとにちいさいハートが点滅てんめつ
loops-icon-small-heart-run.png
loops-icon-clear-run.png
10 (10,000ミリ) びょうごとにハートが点滅てんめつ
loops-icon-heart-run.png
loops-icon-clear-run.png

くりかえしをわる

メモ

構文こうぶん

ブロック
loops-break.png
JavaScript
break;
MakeCode Python
break

れい

ブロック
loops-break-ex.png
JavaScript
input.onButtonPressed(Button.B, function () {
    for (let x = 0; x <= 99; x++) {
        if (x > 3) {
            break;
        }
        basic.showNumber(x)
    }
})
MakeCode Python
def on_button_pressed_b():
    for x in range(100):
        if x > 3:
            break
        basic.show_number(x)
input.on_button_pressed(Button.B, on_button_pressed_b)
実行結果じっこうけっか
ボタンBをすと、 0~3の数字すうじ表示ひょうじされる
loops-num-0-run.png
loops-num-1-run.png
loops-num-2-run.png
loops-num-3-run.png

れい -

ブロック
loops-break-nest-1-ex.png

loops-break-nest-2-ex.png
JavaScript
input.onButtonPressed(Button.B, function () {
    for (let x = 0; x <= 99; x++) {
        if (x > 2) {
            break;
        }
        for (let y of list) {
            if (y < 0) {
                break;
            }
            x1 = x + 1
            basic.showNumber(x1 * y)
        }
    }
})
let x1 = 0
let list: number[] = []
list = [
3,
2,
-1,
9
]
MakeCode Python
def on_button_pressed_b():
    global x1
    for x in range(100):
        if x > 2:
            break
        for y in list2:
            if y < 0:
                break
            x1 = x + 1
            basic.show_number(x1 * y)
input.on_button_pressed(Button.B, on_button_pressed_b)

x1 = 0
list2: List[number] = []
list2 = [3, 2, -1, 9]
実行結果じっこうけっか
ボタンBをすと、 数字すうじが6 (3 x 2)かい表示ひょうじされる
3:1 x 3
loops-num-3-run.png
2:1 x 2
loops-num-2-run.png
6:2 x 3
loops-num-6-run.png
4:2 x 2
loops-num-4-run.png
9:3 x 3
loops-num-9-run.png
6:3 x 2
loops-num-6-run.png

くりかえしの先頭せんとう

メモ

構文こうぶん

ブロック
loops-continue.png
JavaScript
continue;
MakeCode Python
continue

れい

ブロック
loops-continue-ex.png
JavaScript
input.onButtonPressed(Button.B, function () {
    for (let x = 0; x <= 9; x++) {
        y = x + 1
        if (y % 3 != 0) {
            continue;
        }
        basic.showNumber(y)
    }
})
let y = 0
MakeCode Python
def on_button_pressed_b():
    global y
    for x in range(10):
        y = x + 1
        if y % 3 != 0:
            continue
        basic.show_number(y)
input.on_button_pressed(Button.B, on_button_pressed_b)

y = 0
実行結果じっこうけっか
ボタンBをすと、 1~10の数字すうじのうちで、3の倍数ばいすう (3でったあまりが0) が表示ひょうじされる
loops-num-3-run.png
loops-num-6-run.png
loops-num-9-run.png

れい -

ブロック
loops-continue-nest-ex.png
JavaScript
input.onButtonPressed(Button.B, function () {
    for (let x = 0; x <= 4; x++) {
        // x は 2・3・4 が ゆうこう
        if (x < 2) {
            continue;
        }
        for (let y = 0; y <= 2; y++) {
            // y は 0・2 が ゆうこう
            if (y == 1) {
                continue;
            }
            basic.showNumber(x - y)
        }
    }
})
MakeCode Python
def on_button_pressed_b():
    for x in range(5):
        # x は 2・3・4 が ゆうこう
        if x < 2:
            continue
        for y in range(3):
            # y は 0・2 が ゆうこう
            if y == 1:
                continue
            basic.show_number(x - y)
input.on_button_pressed(Button.B, on_button_pressed_b)
実行結果じっこうけっか
ボタンBをすと、 数字すうじが6 (3 x 2)かい表示ひょうじされる
2:2 - 0
loops-num-2-run.png
0:2 - 2
loops-num-0-run.png
3:3 - 0
loops-num-3-run.png
1:3 - 2
loops-num-1-run.png
4:4 - 0
loops-num-4-run.png
2:4 - 2
loops-num-2-run.png