Задания
Версия для печати и копирования в MS Word
Тип Д6 № 5309
i

Опре­де­ли­те, что будет на­пе­ча­та­но в ре­зуль­та­те вы­пол­не­ния про­грам­мы (за­пи­сан­ной ниже на раз­ных язы­ках про­грам­ми­ро­ва­ния):

 

Бей­сикПас­каль

DIM N, S AS INTEGER

    N = 50

    S = 1

    WHILE S < 1000

        S = S * 2

        N = N + 10

    WEND

PRINT N

var n, s: integer;

begin

    n := 50;

    s := 1;

    while s < 1000 do

    begin

        s := s * 2;

        n := n + 10

    end;

    write(n);

end.

Си++Ал­го­рит­ми­че­ский язык

#include <iostream>

using namespace std;

int main()

{

    int n, s;

    n = 50;

    s = 1;

    while (s < 1000)

    {

        s = s * 2 ;

        n = n + 10;

    }

    cout « n « endl;

}

алг

нач

цел n, s

n := 50

s : = 1

нц пока s < 1000

    s : = s * 2

    n := n + 10

кц

вывод n

кон

Python

n = 50

s = 1

while s < 1000:

    s *= 2

    n += 10

print(n)

Спрятать решение

Ре­ше­ние.

Цикл while вы­пол­ня­ет­ся до тех пор, пока ис­тин­но усло­вие s < 1000, т. е. пе­ре­мен­ная s опре­де­ля­ет, сколь­ко раз вы­пол­нит­ся цикл.

 

По­сколь­ку  512 мень­ше 1000 мень­ше левая круг­лая скоб­ка 1024 = 2 в сте­пе­ни левая круг­лая скоб­ка 10 пра­вая круг­лая скоб­ка пра­вая круг­лая скоб­ка , сле­до­ва­тель­но, цикл вы­пол­нит­ся 10 раз. На 10-м шаге s ста­нет рав­ной 1024 и усло­вие s < 1000 ока­жет­ся не вы­пол­нен­ным, цикл пре­рвет­ся. Сле­до­ва­тель­но, зна­че­ние n будет равно 10·10 + 50  =  150.

Раздел кодификатора ФИПИ: 1.7.2 Ос­нов­ные кон­струк­ции языка про­грам­ми­ро­ва­ния. Си­сте­ма про­грам­ми­ро­ва­ния