СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

21_План-конспект урока_"Алгоритмы управления"_9 класс_уч. Босовой Л.Л., Босовой А.Ю.

Категория: Информатика

Нажмите, чтобы узнать подробности

План-конспект урока Алгоритмы управления"_9 класс_уч. Босовой Л.Л., Босовой А.Ю. включает разминку: несколько готовых алгоритмов, по которым нужно восстановить формулировку задания и определить результат дейтсвия алгоритма; практическую работу на повторение по обработке массивов; объяснение по презентации автора учебника; творческое задание "Алгоритмы управления". В конце урока необходимо организовать обсуждение полученных результатов творческого задания. Учителю нужг\но быть готовым ответить на вопросы учеников и привести собственные примеры современных достижений науки исскуственный и нтеллект.

Просмотр содержимого документа
«21_План-конспект урока_"Алгоритмы управления"_9 класс_уч. Босовой Л.Л., Босовой А.Ю.»

9 класс




План-конспект

  1. проведения занятия по дисциплине «Информатика и ИКТ»


Раздел 2. Алгоритмизация и программирование.

Занятие № 21.


Алгоритмы управления

Вид учебного занятия:

Комбинированный урок

Цели и задачи урока:

  1. Познакомить кадет с понятиями: управление, кибернетика, обратная связь. Повторить основные действия с массивами целых чисел: объявление, заполнение, отбор по условию, замена элементов, нахождение суммы и произведения.

  2. Развивать умение определять механизм прямой и обратной связи в ситуациях управления; способствовать развитию коммуникативности

  3. Воспитывать ответственность, бережное отношение к оборудованию.

Материальное обеспечение:

Доска, цв. маркеры, компьютерный класс, интерактивная доска, мультимедийный проектор, тетрадь, презентация, раздаточный материал.

Методы работы:

Эвристическая беседа, самостоятельная работа, творческое задание.


Ход занятия:


Этапы урока

Содержание

Время

1. Организация и постановка цели.

Внешний вид, приветствие, дежурство, готовность взвода и оборудования, цели занятия, мотивация учебной деятельности.

1

2.  Актуализация знаний


3. Самостоятельная работа





4. Введение новых знаний.


5. Оперирование новыми знаниями.

Разминка. См. Приложение 1.


Самостоятельная работа «Алгоритмы обработки массивов» по уровням: 1. Для сдающих ОГЭ 7 задания повышенного и высокого уровня (начинают работу без разминки); 2. Для остальных кадет задания базового и повышенного уровня (уровни А, В, С). Приложение 2, 3.


Просмотр презентации «Алгоритмы управления». http://lbz.ru/metodist/authors/informatika/3/eor9.php


Практическая работа «Алгоритмы управления». Приложение 4.

6



10






10


15


5. Задание на самоподготовку

§4.7, задания по карточкам уровень А В С

1

5. Итог урока.

Подведение итогов урока. Акцентирование внимания на новых понятиях. Выставление оценок.

2



Преподаватель Ю.В. Клюшникова


21.11.18 г.












Приложение 1. Разминка

Определить формулировку задачи и результат действия алгоритма:

  1. var a : array [1..5] of integer;

i, sum : integer;

begin

a[1] := 5; a[2] := 0; a[3] := -8; a[4] := -9; a[5] := -1;

for i := 1 to 5 do

if a[i] 0 then sum := sum + a[i];

write(……);

end.

  1. var a : array [1..5] of integer;

i, proizv : integer;

begin

a[1] := 5; a[2] := 0; a[3] := -8; a[4] := -9; a[5] := -1;

proizv := ….;

for i := 1 to 5 do

if a[i] mod 4 0 then proizv := proizv * a[i];

write(……..);

end.

  1. var a : array …………;

i, count : integer;

begin

a[1] := 5; a[2] := 0; a[3] := -8; a[4] := -9; a[5] := -1;

for i := 1 to 5 do

if a[i] mod 2 = 0 then count := count + …;

write(……);

end.

По результату алгоритма определить формулировку задачи:

  1. var a : array [1..5] of integer;

i, count : integer;

begin

a[1] := 5; a[2] := 0; a[3] := -8; a[4] := -9; a[5] := -1;

for i := 1 to 5 do

if ……………….. then count := count + 1;

write(count);

end.

Результат: 3

  1. var a : array [1..5] of integer;

i : integer;

begin

a[1] := 5; a[2] := 0; a[3] := -8; a[4] := -9; a[5] := 10;

for i := 1 to 5 do

if ………………then a[i] := 555;

for i := 1 to 5 do

write(….);

end.

Результат: 5 0 555 555 10

  1. var a : array [1..5] of integer;

i, sum : integer;

begin

a[1] := 5; a[2] := 3; a[3] := -8; a[4] := 9; a[5] := -1;

for i := 1 to 5 do

if ………………… then write(a[i], ‘ ‘);

end.

Результат: 3 9


Приложение 2. Самостоятельная работа «Алгоритмы обработки массивов» 1. Для сдающих ОГЭ

Вариант 1__________________________ПРОГРАММИРОВАНИЕ ОГЭ ИНФОРМАТИКА

ФИО___________________________________________________________________КЛАСС________________________

1. Определите, что будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей программы. Текст про­грам­мы приведён на пяти язы­ках программирования.

 Паскаль

С++

var s,k: integer;

begin

    s := 2;

    for k := 1 to 3 do

        s := s * s;

    writeln(s);

end.

#include

using namespace std;

int main() {

     int s = 2;

     for (int k = 1; k

          s = s * s;

     cout

     return 0;

}

2. Запишите зна­че­ние переменной s, по­лу­чен­ное в ре­зуль­та­те работы сле­ду­ю­щей программы. Текст про­грам­мы приведён на пяти язы­ках программирования.

 Паскаль

С++

var s,k: integer;

begin

    s := 8;

    for k := 3 to 8 do

        s := s + 8;

    writeln(s);

end.

#include

using namespace std;

int main() {

     int s = 8;

     for (int k = 3; k

          s += 8;

     cout

     return 0;

}

3. Садовник, ра­бо­тая в оран­же­рее бо­та­ни­че­ско­го сада, за­пи­сы­вал в таб­ли­цу Flow ко­ли­че­ство видов растений, цве­ту­щих в те­ку­щем месяце. (Flow[1] — ко­ли­че­ство цве­ту­щих рас­те­ний в январе, Flow[2] – в фев­ра­ле и т. д.). Определите, какое число будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей программы. Текст про­грам­мы приведён на пяти язы­ках программирования.

Паскаль

С++

Var k, m: integer;

Flow: array[1..12] of integer;

Begin

   Flow[1]:=25;Flow[2]:=33; Flow[3]:=45; Flow[4]:=56; Flow[5]:=78;Flow[6]:=112;

   Flow[7]:=120;Flow[8]:=133; Flow[9]:=97; Flow[10]:=77; Flow[11]:=59;Flow[12]:=34;

   m := 35;

   for k := 1 to 12 do

      if Flow[k] 100 then

       begin

          m := m + 1;

       end;

   writeln(m);

End.

#include

using namespace std;

int main() {

    int Flow[12] = {25, 33, 45, 56, 78, 112, 120, 133, 97, 77, 59, 34};

    int m = 35;

    for (int k = 0; k

        if (Flow[k] 100) m = m + 1;

    cout

    return 0;

}

4. Школьник делал лабораторную работу по физике, в ходе которой измерил 10 раз силу тока и записал показания амперметра в таблицу Tok (Tok[1] — результат первого измерения, Tok[2] — второго и т. д.). Определите, какое число будет напечатано в результате работы следующей программы. Текст программы приведён на пяти языках программирования.

 Паскаль

С++

Var k, m: integer;

Tok: array[1..10] of integer;

Begin

Tok[1] := 10; Tok[2] := 14;    Tok[3] := 15; Tok[4] := 4;    Tok[5] := 12; Tok[6] := 6;

Tok[7] := 3; Tok[8] := 5;    Tok[9] := 5; Tok[10] := 10;

   m := 0;

   for k := 1 to 10 do

      if Tok[k] 6 then

       begin

          m := m + 2;

       end;

   writeln(m);

End.

#include

using namespace std;

int main() {

    int Tok[10] = {10, 14, 15, 4, 12, 6, 3, 5, 5, 10};

    int m = 0;

    for (int k = 0; k

        if (Tok[k] 6) m = m + 2;

    cout

    return 0;

}


5. Известная авиа­ком­па­ния за­но­си­ла дан­ные о ко­ли­че­стве уте­рян­но­го ба­га­жа за год в таб­ли­цу Lose. Всего были за­не­се­ны дан­ные за по­след­ние 10 лет ра­бо­ты ком­па­нии (Lose[1] — ко­ли­че­ство уте­рян­но­го ба­га­жа за пер­вый год работы, Lose[2] — за вто­рой год и т. д.). Определите, какое число будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей программы. Текст про­грам­мы приведён на пяти язы­ках программирования.

 Паскаль

С++

Var t, m: integer;

Lose: array[1..10] of integer;

Begin

   Lose[1]:=1;Lose[2]:=5;

   Lose[3]:=3;Lose[4]:=6;

   Lose[5]:=7;Lose[6]:=12;

   Lose[7]:=1;Lose[8]:=3;

   Lose[9]:=3;Lose[10]:=1;

   m := 0;

   for t := 1 to 10 do

      if Lose[t]

       begin

          m := m + Lose[t];

       end;

   writeln(m);

End.

#include

using namespace std;

int main() {

    int Lose[10] = {1, 5, 3, 6, 7, 12, 1, 3, 3, 1};

    int m = 0;

    for (int t = 0; t

        if (Lose[t]

    cout

    return 0;

}

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

Паскаль

С++

Var k, m, day: integer;

Dat: array[1..10] of integer;

Begin

   Dat[1] := 2; Dat[2] := 6;    Dat[3] := 3;

Dat[4] := 5;    Dat[5] := 4; Dat[6] := 4;

Dat[7] := 5; Dat[8] := 3;    Dat[9] := 6; Dat[10] := 2;

   m := Dat[1];

   day := 1;

   for k := 2 to 10 do

      if Dat[k] m then

       begin

          m := Dat[k];

          day := k;

       end;

   writeln(day);

End.

#include

using namespace std;

int main() {

    int Dat[10] = {2, 6, 3, 5, 4, 4, 5, 3, 6, 2};

    int m = Dat[0];

    int day = 1;

    for (int k = 1; k

        if (Dat[k] m) {

            m = Dat[k];

            day = k + 1;

        }

    cout

    return 0;

}

7.  На­пи­ши­те программу, ко­то­рая в по­сле­до­ва­тель­но­сти на­ту­раль­ных чисел на­хо­дит сред­нее ариф­ме­ти­че­ское чисел, крат­ных 8, или сообщает, что таких чисел нет (выводит «NO»). Про­грам­ма по­лу­ча­ет на вход на­ту­раль­ные числа, ко­ли­че­ство введённых чисел неизвестно,последовательность чисел за­кан­чи­ва­ет­ся чис­лом 0 (0 – при­знак окон­ча­ния ввода, не вхо­дит в последовательность).

Количество чисел не пре­вы­ша­ет 100. Введённые числа не пре­вы­ша­ют 300. Про­грам­ма долж­на вы­ве­сти сред­нее ариф­ме­ти­че­ское чисел, крат­ных 8, или вы­ве­сти «NO», если таких чисел нет. Зна­че­ние вы­во­дить с точ­но­стью до десятых.  Пример ра­бо­ты программы:

 Входные данные

Выходные данные


8

122

64

16

0

29,3



 Входные данные

Выходные данные

111

1

0

NO


8. 
На­пи­ши­те программу, ко­то­рая в по­сле­до­ва­тель­но­сти на­ту­раль­ных чисел опре­де­ля­ет ми­ни­маль­ное число, окан­чи­ва­ю­ще­е­ся на 4. Про­грам­ма по­лу­ча­ет на вход ко­ли­че­ство чисел в последовательности, а затем сами числа. В по­сле­до­ва­тель­но­сти все­гда име­ет­ся число, окан­чи­ва­ю­ще­е­ся на 4. Ко­ли­че­ство чисел не пре­вы­ша­ет 1000. Введённые числа не пре­вы­ша­ют 30 000. Про­грам­ма долж­на вы­ве­сти одно число — ми­ни­маль­ное число,

оканчивающееся на 4.

Пример ра­бо­ты программы:

 Входные данные

Выходные данные

3

24

14

34

14


Вариант 2__________________________ПРОГРАММИРОВАНИЕ ОГЭ ИНФОРМАТИКА

ФИО___________________________________________________________________КЛАСС________________________

1. Определите, что будет на­пе­ча­та­но в ре­зуль­та­те работы сле­ду­ю­щей программы. Текст про­грам­мы приведён на пяти язы­ках программирования. 

Паскаль

С++

var s,k: integer;

begin

    s := 1;

    for k := 0 to 4 do

        s := s * 3;

    writeln(s);

end.

#include

using namespace std;

int main() {

     int s = 1;

     for (int k = 0; k

          s = s * 3;

     cout

     return 0;

}

2. Запишите зна­че­ние переменной s, по­лу­чен­ное в ре­зуль­та­те работы сле­ду­ю­щей программы. Текст про­грам­мы приведён на пяти язы­ках программирования. 

Паскаль

С++

var s,k: integer;

begin

    s := 0;

    for k := 7 to 11 do

        s := s + 11;

    writeln(s);

end.

#include

using namespace std;

int main() {

     int s = 0;

     for (int k = 7; k

          s += 11;

     cout

     return 0;

}

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

 Паскаль

С++

Var k, m, month: integer;

Dat: array[1..12] of integer;

Begin

   Dat[1] := 2; Dat[2] := 8;    Dat[3] := 6;

Dat[4] := 3;    Dat[5] := 8; Dat[6] := 2;

   Dat[7] := 3; Dat[8] := 7; Dat[9] := 8; Dat[10] := 3;

   Dat[11] := 8; Dat[12] := 7;

   m := Dat[1];

   month := 1;

   for k := 8 to 12 do

      if Dat[k] m then

       begin

          m := Dat[k];

          month := k;

       end;

   writeln(month);

End.

#include

using namespace std;

int main() {

    int Dat[12] = {2, 8, 6, 3, 8, 2, 3, 7, 8, 3, 8, 7};

    int m = Dat[0];

    int month = 1;

    for (int k = 7; k

        if (Dat[k] m) {

            m = Dat[k];

            month = k + 1;

        }

    cout

    return 0;

}

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

  Паскаль

С++

Var k, m: integer;

Dat: array[1..7] of integer;

Begin

   Dat[1] := −2; Dat[2] := −1; Dat[3] := 2; Dat[4] := 4;

   Dat[5] := 0; Dat[6] := −1;    Dat[7] := −4;

   m := 0;

   for k := 1 to 7 do

      if Dat[k]

       begin

          m := m + 1;

       end;

   writeln(m);

End.

#include

using namespace std;

int main() {

    int Dat[7] = {−2, −1, 2, 4, 0, −1, −4};

    int m = 0;

    for (int k = 0; k

        if (Dat[k]

    cout

    return 0;

}

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

 Паскаль

С++

Var k, m, term: integer;

Dat: array[1..8] of integer;

Begin

   Dat[1] := 7; Dat[2] := 7;  Dat[3] := 6; Dat[4] := 8;

   Dat[5] := 4; Dat[6] := 5; Dat[7] := 8; Dat[8] := 7;

   m := Dat[1];

   term := 1;

   for k := 2 to 8 do

      if Dat[k] m then

       begin

          m := Dat[k];

          term := k;

       end;

   writeln(term);

End.

#include

using namespace std;

int main() {

    int Dat[8] = {7, 7, 6, 8, 4, 5, 8, 7};

    int m = Dat[0];

    int term = 1

    for (int k = 1; k

        if (Dat[k] m) {

            m = Dat[k];

            term = k + 1;

        }

    cout

    return 0;

}

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

 Паскаль

С++

Var k, m: integer;

Dat: array[1..10] of integer;

Begin

   Dat[1] := 2; Dat[2] := 5; Dat[3] := 7; Dat[4] := 5;

   Dat[5] := 4; Dat[6] := 2; Dat[7] := 0; Dat[8] := 3;

   Dat[9] := 4; Dat[10] := 5;

   m := 10;

   for k := 1 to 10 do

      if Dat[k]

       begin

          m := Dat[k];

       end;

   writeln(m);

End.

#include

using namespace std;

int main() {

    int Dat[10] = {2, 5, 7, 5, 4, 2, 0, 3, 4, 5};

    int m = 10;

    for (int k = 0; k

        if (Dat[k]

    cout

    return 0;

}

7. На­пи­ши­те программу, ко­то­рая в по­сле­до­ва­тель­но­сти на­ту­раль­ных чисел на­хо­дит сред­нее ариф­ме­ти­че­ское чисел, крат­ных 8, или сообщает, что таких чисел нет (выводит «NO»). Про­грам­ма по­лу­ча­ет на вход на­ту­раль­ные числа, ко­ли­че­ство введённых чисел неизвестно, последовательность чисел за­кан­чи­ва­ет­ся чис­лом 0 (0 – при­знак окон­ча­ния ввода, не вхо­дит в последовательность).

Количество чисел не пре­вы­ша­ет 100. Введённые числа не пре­вы­ша­ют 300. Про­грам­ма долж­на вы­ве­сти сред­нее ариф­ме­ти­че­ское чисел, крат­ных 8, или вы­ве­сти «NO», если таких чисел нет. Зна­че­ние вы­во­дить с точ­но­стью до десятых.

 Пример ра­бо­ты программы:

 Входные данные

Выходные данные

8

122

64

16

0

29,3

111

1

0

NO

8.  Напишите программу, ко­то­рая в по­сле­до­ва­тель­но­сти целых чисел опре­де­ля­ет их сумму и ко­ли­че­ство чётных чисел, крат­ных 5. Про­грам­ма получает на вход целые числа, ко­ли­че­ство введённых чисел неизвестно, по­сле­до­ва­тель­ность чисел за­кан­чи­ва­ет­ся числом 0 (0 — при­знак окончания ввода, не вхо­дит в последовательность). Ко­ли­че­ство чисел не пре­вы­ша­ет 1000. Введённые числа по мо­ду­лю не пре­вы­ша­ют 30 000. Про­грам­ма должна вы­ве­сти два числа: сумму по­сле­до­ва­тель­но­сти и ко­ли­че­ство чётных чисел, крат­ных 5.

 Пример ра­бо­ты программы:

 Входные данные

Выходные данные

4
60
15
0

79
1


ОТВЕТЫ ПРОГРАММИРОВАНИЕ 20.11.18 ВАРИАНТ 1


Критерии оце­ни­ва­ния вы­пол­не­ния за­да­ния 20.2

Баллы

Предложено вер­ное решение. Про­грам­ма пра­виль­но ра­бо­та­ет на всех приведённых выше тестах.

2

Программа выдаёт не­вер­ный ответ ровно на одном из тестов, приведённых выше ИЛИ Про­грам­ма выдаёт не­вер­ный ответ на всех тестах: на каж­дом тесте толь­ко на один из двух во­про­сов по­лу­чен пра­виль­ный ответ. ИЛИ Про­грам­ма выдаёт не­вер­ный ответ на всех тестах: сна­ча­ла вы­во­дит­ся ответ на вто­рой вопрос, затем — на первый

1

Программа выдаёт на те­стах не­вер­ные ответы, от­лич­ные от опи­сан­ных в кри­те­рии на 1 балл

0

№7Var N, a, sum: integer;

begin

sum := 0;N := 0; readln(a); while a 0 do begin

N := N + 1;

if (a mod 2=0) then sum := sum + a; readln(a);

end;

writeln(N); writeln(sum)

end.

 Для про­вер­ки пра­виль­но­сти ра­бо­ты про­грам­мы не­об­хо­ди­мо ис­поль­зо­вать сле­ду­ю­щие тесты:










Входные данные

Выходные данные

1

1

20

21

30

0

4

50

2

10

0

1

10

3

101

29

0

2

0

4

45

1000

20

0

3

1020

вы­пол­не­ния за­да­ния 20.2

Баллы

Предложено вер­ное решение. Про­грам­ма пра­виль­но ра­бо­та­ет на всех приведённых выше тестах.

2

Программа выдаёт не­вер­ный ответ на одном из тестов, приведённых выше

1

Программа выдаёт на те­стах не­вер­ные ответы, от­лич­ные от опи­сан­ных в кри­те­рии на 1 балл

0

№ 8. Ре­ше­ни­ем яв­ля­ет­ся программа, за­пи­сан­ная на любом языке программирования. При­мер вер­но­го решения, за­пи­сан­но­го на языке Паскаль:

var n,i,a,min: integer;

begin

readln(n);

min := 30001;

for i := 1 to n do

begin

readln(a);

if (a mod 10 = 4) and (a

then min := a;

end;

writeln(min)

end.

Возможны и дру­гие ва­ри­ан­ты решения. Для про­вер­ки пра­виль­но­сти ра­бо­ты про­грам­мы не­об­хо­ди­мо ис­поль­зо­вать сле­ду­ю­щие тесты:




Входные данные

Выходные данные

1

3

2

4

19

4

2

4

23

14

24

44

14

3

4

13

24

44

4

4


ОТВЕТЫ ПРОГРАММИРОВАНИЕ 20.11.18 ВАРИАНТ 2


Критерии оце­ни­ва­ния вы­пол­не­ния за­да­ния 20.2

Баллы

Предложено вер­ное решение. Про­грам­ма пра­виль­но ра­бо­та­ет на всех приведённых тестах. До­пу­стим вывод от­ве­та с дру­гой точ­но­стью или в экс­по­нен­ци­аль­ной форме, например, 25.60.

2

Программа выдаёт не­вер­ный ответ на одном из тестов, приведённых выше. Например, если в ре­ше­нии не­пра­виль­но ор­га­ни­зо­ван вывод результата, то про­грам­ма вы­даст не­вер­ный ответ на тесте № 1

1

Программа выдаёт не­вер­ный ответ на двух или более тестах

0

№ 7. Ре­ше­ни­ем яв­ля­ет­ся программа, за­пи­сан­ная на любом языке программирования. При­мер вер­но­го решения, за­пи­сан­но­го на языке Паскаль:

var a, s, n: integer;

begin

    s:=0; n:=0;

    readln(a);

    while a0 do begin

        if (a mod 8 = 0) then

            begin

                s := s + a;

                n := n + 1;

            end;

        readln(a); end;

    if n 0 then writeln(s/n :5:1)

        else writeln(’NO’);

end.

Возможны и дру­гие ва­ри­ан­ты решения. Для про­вер­ки пра­виль­но­сти ра­бо­ты про­грам­мы не­об­хо­ди­мо использовать следующие тесты:

 

Входные данные

Выходные данные

1

2

222

0

NO

2

16

0

16.0

3

16

32

64

8

8

5

0

25.6

№ 8.

Критерии оце­ни­ва­ния выполнения за­да­ния 20.2

Баллы

Предложено вер­ное решение. Про­грам­ма правильно ра­бо­та­ет на всех приведённых выше тестах.

2

Программа выдаёт не­вер­ный ответ ровно на одном из тестов ИЛИ Про­грам­ма выдаёт не­вер­ный ответ на всех тестах: на каж­дом тесте толь­ко на один из двух во­про­сов получен пра­виль­ный ответ. ИЛИ Про­грам­ма выдаёт не­вер­ный ответ на всех тестах: сна­ча­ла выводится ответ на вто­рой вопрос, затем — на первый

1

Программа выдаёт на те­стах неверные ответы, от­лич­ные от опи­сан­ных в кри­те­рии на 1 балл

0

var sum, a, num: integer;

begin

sum := 0; num := 0; readln (a); while a0 do begin

sum := sum + a;

if (a mod 2=0) and (a mod 5=0) then num := num + 1; readln(a);

end;

writeln(sum); writeln(num)

end.

 Для про­вер­ки правильности ра­бо­ты программы не­об­хо­ди­мо использовать сле­ду­ю­щие тесты:




Входные данные

Выходные данные

1

10

50

50

10

0

120

4

2

10

0

10

1

3

101

20

0

121

1

4

45

1000

20

0

1065

2



Приложение 3. Самостоятельная работа «Алгоритмы обработки массивов» Для кадет, не сдающих ОГЭ, задания базового и повышенного уровня (уровни А, В, С).

Самостоятельная работа «Алгоритмы обработки массивов» Вариант 1

ФИО________________________________________________________КЛАСС________

Уровень А 1. Определить результат действия алгоритма:

var a : array [1..5] of integer;

i, sum : integer;

begin

a[1] := 0; a[2] := -4; a[3] := 5; a[4] := 0; a[5] := -10;

for i := 1 to 5 do

if a[i] mod 10 = 5 then sum := sum + a[i];

write(sum);

end.

2. Определить результат действия алгоритма:

var a : array [1..5] of integer;

i : integer;

begin

a[1] := 0; a[2] := -4; a[3] := 3; a[4] := 0; a[5] := 1;

for i := 1 to 5 do

if a[i] 0 then a[i] := 1000;

for i := 1 to 5 do

write(a[i], ‘ ‘);

end.

Уровень В 3. Алгоритм определяет максимальный элемент массива и его номер. Как нужно дополнить алгоритм:

var a : array [1..5] of integer;

i, max : integer;

begin

a[1] := 0; a[2] := -4; a[3] := 3; a[4] := 0; a[5] := 1;

max := a[1];

for i := 2 to 5 do

…………………………..;

write(‘max= ‘, max);

end.

Уровень С 4. Определить назначение фрагментов программы:

Фрагмент программы

назначение

1

var a : array [1..10] of integer;

i, count : integer;


2

Begin For i := 1 to 10 do

Read(a[i]);


3

For i := 1 to 10 do

write(a[i] : 4);


4

For i := 1 to 10 do

if a[i] mod 2 0 then count := count +1;


5

Write(count);

End.



Самостоятельная работа «Алгоритмы обработки массивов» Вариант 2

ФИО________________________________________________________КЛАСС________

Уровень А

1. Определить результат действия алгоритма:

var a : array [1..5] of integer;

i, p : integer;

begin

a[1] := 3; a[2] := 4; a[3] := -3; a[4] := 10; a[5] := 12;

p := 1;

for i := 1 to 5 do

if a[i] mod 4 = 0 then p := p * a[i];

write(p);

end.

2. Определить результат действия алгоритма:

var a : array [1..5] of integer;

i : integer;

begin

a[1] := 3; a[2] := 4; a[3] := -3; a[4] := 10; a[5] := 12;

for i := 1 to 5 do

if a[i]

for i := 1 to 5 do

write(a[i], ‘ ‘);

end.

Уровень В 3. Алгоритм определяет минимальный элемент массива и его номер. Как нужно дополнить алгоритм:

var a : array [1..5] of integer;

i, min : integer;

begin

a[1] := 3; a[2] := 4; a[3] := -3; a[4] := 10; a[5] := 12;

min := a[1];

for i := 2 to 5 do

…………………………..;

write(‘min= ‘, min);

end.

Уровень С 4. Определить назначение фрагментов программы:

Фрагмент программы

назначение

1

var a : array [1..9] of integer;

i, sum : integer;


2

Begin For i := 1 to 9 do

a[i] := random(21);


3

For i := 1 to 9 do

write(a[i] , ‘ ‘);


4

For i := 1 to 9 do

if a[i] mod 10=5 then sum := sum +a[i];


5

Write(sum);

End.



Ответы:

№/ Вариант

1

2

1

-5

48

2

0 -4 1000 0 1000

0 0 0 10 12

3

if a[i] max then max:=a[i];

if a[i]

4

Дан массив а из 10 целых чисел с номерами i , переменная count - целая

Дан массив а из 9 целых чисел с номерами i, переменная sum - целая

Начало программы, каждый элемент массива считывается с клавиатуры

Начало программы, каждый элемент массива задается случайным образом в пределах от 0 до 20

Вывод массива в строку через равные промежутки

Вывод массива в строку через пробел

Количество нечетных элементов массива - count

Сумма чисел, оканчивающихся на 5 - sum

Записывается ответ: значение переменной count

Записывается ответ: значение переменной sum


Приложение 4. Практическая работа «Алгоритмы управления»

Практическая работа «Алгоритмы управления»

1. Ознакомьтесь со следующими материалами:

https://ru.wikipedia.org/wiki/%D0%9A%D0%B8%D0%B1%D0%B5%D1%80%D0%BD%D0%B5%D1%82%D0%B8%D0%BA%D0%B0

https://ru.wikipedia.org/wiki/%D0%98%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82

https://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B1%D0%BE%D1%82%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D0%B8%D0%BA%D0%B0

https://www.factroom.ru/facts/35348

https://ria.ru/science/20170610/1496120990.html

https://www.nkj.ru/archive/articles/33857/

2. Перечислите несколько направлений кибернетики:

1). __________________________________________________________

2). __________________________________________________________

3). __________________________________________________________

3. Как называется раздел кибернетики, задачей которого является воссоздание с помощью вычислительных систем и иных искусственных устройств разумных рассуждений и действий?

_______________________________________________________________

4. Как называется прикладная наука, занимающаяся разработкой автоматизированных технических систем и являющаяся важнейшей технической основой развития производства?

________________________________________________________________

5. Приведите пример того, чего современный искусственный интеллект не умеет делать:

___________________________________________________________________________________________________________________________________________________________________________________________________________________________________

6. Приведите пример того, чему научился современный искусственный интеллект по сравнению с искусственным интеллектом 2010 года?:

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________





Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!