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

В таб­ли­це A хра­нят­ся дан­ные о ко­ли­че­стве уче­ни­ков опоз­дав­ших на за­ня­тия  за не­де­лю (A[1] − дан­ные за по­не­дель­ник, A[2] − за втор­ник и т. д.). Опре­де­ли­те, что будет на­пе­ча­та­но в ре­зуль­та­те вы­пол­не­ния сле­ду­ю­ще­го ал­го­рит­ма, за­пи­сан­но­го на трех язы­ках про­грам­ми­ро­ва­ния.

 

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

алг

нач

  цел­таб A[1:6]

  цел k, m, day

  A[1] := 5; A[2] := 4

  A[3] := 2; A[4] := 2

  A[5] := 4; A[6] := 3

  day := 1; m := A[1]

  нц для k от 2 до 6

    если A[k] <= m то

     m := A[k]

     day := k

    все

  кц

  вывод day

кон

Бей­сик

Пас­каль

DIM A(6) AS INTEGER

A(1) = 5: A(2) = 4

A(3) = 2: A(4) = 2

A(5) = 4: A(6) = 3

day = 1: m = A(1)

FOR k = 2 TO 6

 IF A(k) <= m THEN

  m = A(k)

  day = k

 END IF

NEXT k

PRINT day

END

var k, m, day: integer;

A: array[1..6] of integer;

begin

  A[1] := 5; A[2] := 4;

  A[3] := 2; A[4] := 2;

  A[5] := 4; A[6] := 3;

  day := 1; m := A[1];

  for k := 2 to 6 do

    begin

      if A[k] <= m then

        begin

          m := A[k];

          day := k

        end;

  write(day);

end.


 

 

Ре­ше­ние.

Это за­да­ние ещё не ре­ше­но, при­во­дим ре­ше­ние про­то­ти­па.


В таб­ли­це A хра­нят­ся дан­ные о ко­ли­че­стве уче­ни­ков, опоз­дав­ших на за­ня­тия, за не­де­лю (A[1]  — дан­ные за по­не­дель­ник, A[2]  — за втор­ник и т. д.). Опре­де­ли­те, что будет на­пе­ча­та­но в ре­зуль­та­те вы­пол­не­ния сле­ду­ю­ще­го ал­го­рит­ма, за­пи­сан­но­го на пяти язы­ках про­грам­ми­ро­ва­ния.

Бей­сикPython

DIM A(6) AS INTEGER

DIM k, m, day AS INTEGER

A(1) = 3: A(2) = 1

A(3) = 4: A(4) = 2

A(5) = 4: A(6) = 2

day = 1: m = A(1)

FOR k = 2 TO 6

IF A(k) >= m THEN

m = A(k)

day = k

ENDIF

NEXT k

PRINT day

A = [3, 1, 4, 2, 4, 2]

day = 1

m = A[0]

for k in range (1, 6):

    if A[k] >= m:

        m = A[k]

        day = k + 1

print (day)

Пас­кальАл­го­рит­ми­че­ский язык

Var k, m, day: integer;

A: array[1..6] of integer;

Begin

   A[1]:=3;A[2]:=1;

   A[3]:=4;A[4]:=2;

   A[5]:=4;A[6]:=2;

   day := 1;

   m := A[1];

   for k := 2 to 6 do

     if A[k] >= m then

      begin

        m := A[k];

        day := k;

      end;

   writeln(day);

End.

  алг

  нач

   цел­таб A[1:6]

   цел k, m, day

   A[1] := 3

   A[2] := 1

   A[3] := 4

   A[4] := 2

   A[5] := 4

   A[6] := 2

   day := 1

   m := A[1]

   нц для k от 2 до 6

      если A[k] >= m то

         m := A[k]

         day := k

      все

   кц

   вывод day

кон

С++

#include <iostream>

using namespace std;

int main() {

    int A[6] = {3, 1, 4, 2, 4, 2};

    int day = 1;

    int m = A[0];

    for (int k = 1; k < 6; k++)

        if (A[k] >= m) {

            m = A[k];

            day = k + 1;

        }

    cout << day;

    return 0;

}



Про­грам­ма пред­на­зна­че­на для на­хож­де­ния ко­ли­че­ства дня, в ко­то­рый опоз­да­ли боль­ше всего уче­ни­ков. Если таких дней в не­де­ле не­сколь­ко, то вы­во­дит­ся по­след­ний из них. Про­ана­ли­зи­ро­вав вход­ные дан­ные, при­хо­дим к вы­во­ду, что ответ 5.

 

Ответ: 5.


Аналоги к заданию № 5056: 5933 Все