Студопедия — Вверх вниз влево вправо.
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Вверх вниз влево вправо.






При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:

Сверху свободно снизу свободно

слева свободно справа свободно

             
             
             
             
             
             
A B C D E F  

Цикл

ПОКА < условие >;

Последовательность команд

КОНЕЦ ПОКА

выполняется, пока условие истинно. В конструкции

ЕСЛИ < условие >;

ТО команда1

ИНАЧЕ команда2

КОНЕЦ ЕСЛИ

выполняется команда1 (если условие истинно) или команда2 (если условие ложно).

Если РОБОТ начнёт движение в сторону находящейся рядом с ним

стены, то он разрушится и программа прервётся.

Сколько клеток лабиринта соответствуют требованию, что, начав

движение в ней и выполнив предложенную программу, РОБОТ уцелеет

и остановится в закрашенной клетке (клетка F6)?

1) 8 2) 15 3) 24 4) 27

 

НАЧАЛО

ПОКА < справа свободно ИЛИ снизу свободно >;

ПОКА < справа свободно >;

Вправо

КОНЕЦ ПОКА

ПОКА < снизу свободно >;

Вниз

КОНЕЦ ПОКА

КОНЕЦ ПОКА

КОНЕЦ

Решение:

1) обратим внимание, что в программе три цикла, причем два внутренних цикла вложены в один внешний

2) цикл

ПОКА < справа свободно >;

Вправо

КОНЕЦ ПОКА

означает «двигаться вправо до упора», а цикл

ПОКА < снизу свободно >;

Вниз

КОНЕЦ ПОКА

означает «двигаться вниз до упора»

3) тогда программу можно записать в свободном стиле так:

ПОКА не пришли в угол

Двигаться вправо до упора

Двигаться вниз до упора

КОНЕЦ ПОКА

где угол – это клетка, в которой есть стенки снизу и справа

4) за каждый шаг внешнего цикла Робот проходит путь в виде «сапога», двигаясь сначала вправо до упора, а затем – вниз до упора:

 
     
     

клетка, выделенная красным фоном особая – в ней заканчивается один шаг внешнего цикла и начинается следующий:

а) Робот может попасть в эту клетку, двигаясь вниз из клетки, где справа – стенка

б) снизу есть стенка;

в) снизу стенка есть, справа – нет, поэтому будет выполнен еще один шаг внешнего цикла.

5) в клетку F6 (это угол, где Робот остановился), Робот мог придти за один шаг внешнего цикла (за один «сапог») только из отмеченных клеток:

               
               
               
   
         
     
A B C D E F  
                           

6) теперь отметим красным фоном особые клетки, которые удовлетворяют условиям а-в пункта 4 (см. выше), их всего 2:

 

 

               
               
               
   
         
     
A B C D E F  
                           

7) отметим все пути в форме «сапога», которые приводят в особые клетки:

               
         
         
   
   
     
A B C D E F  
                           

8) больше особых клеток (см. пункт 4) нет; всего отмечено 24 клетки (считая конечную клетку F6)

9) таким образом, правильный ответ – 3.

Возможные ловушки и проблемы: · нужно помнить, что внешний цикл может выполняться более одного раза; неучет этого обстоятельства приводит к неверному ответу 2 (15 клеток) · важен порядок выполнения внутренних циклов (в данном случае сначала Робот идет вправо, а затем – вниз); при изменении этого порядка изменится и результат, в частности, изменятся условия, определяющие особую клетку

Еще пример задания:

             
             
             
             
             
             
A B C D E F  

Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:

Вверх вниз влево вправо.

При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:

Сверху свободно снизу свободно

слева свободно справа свободно

Цикл ПОКА <условие> команда выполняется, пока условие истинно, иначе происходит переход на следующую строку. Сколько клеток приведенного лабиринта соответствуют требованию, что, выполнив предложенную ниже программу, РОБОТ остановится в той же клетке, с которой он начал движение?

1) 1 2) 2 3) 3 4) 0

НАЧАЛО

ПОКА <снизу свободно> вниз

ПОКА <слева свободно> влево

ПОКА <сверху свободно> вверх

ПОКА <справа свободно> вправо

КОНЕЦ

             
             
             
             
             
             
             

Решение:

1) легко понять, что для того, чтобы исполнитель вернулся обратно в ту клетку, откуда он начал движения, четыре стенки должны быть расставлены так, чтобы он упирался в них сначала при движении вниз, затем – влево, вверх и, наконец, вправо:

на рисунке красная точка обозначает клетку, начав с которой РОБОТ вернется обратно;

2) кроме этих четырех стенок, необходимо, чтобы коридор, выделенный на рисунке справа зеленым фоном, был свободен для прохода

3) обратим внимание, что возможны еще «вырожденные» варианты, вроде таких:

             
             
             

4) итак, мы выяснили, что нужно рассматривать лишь те клетки, где есть стенка справа; отметим на исходной карте клетки-кандидаты:

    ·     ·  
        · ·  
          ·  
          ·  
  ·       ·  
·         ·  
A B C D E F  
          ·    
          ·    
          ·    
          ·    
          ·    
          ·    
A B C D E F  

5) этих «подозрительных» клеток не так много, но можно еще сократить количество рассматриваемых вариантов: если РОБОТ начинает движение с любой клетки на вертикали F, он все равно приходит в клетку F4, которая удовлетворяет заданному условию, таким образом, одну клетку мы нашли, а остальные клетки вертикали F условию не удовлетворяют:

 

6) проверяем оставшиеся четыре клетки-кандидаты, но для каждой из них после выполнения алгоритма РОБОТ не приходит в ту клетку, откуда он стартовал:

    ·        
             
             
             
             
             
A B C D E F  
             
             
             
             
  ·          
             
A B C D E F  

 

             
             
             
             
             
·            
A B C D E F  
             
        ·    
             
             
             
             
A B C D E F  

 

 

7) итак, условию удовлетворяет только одна клетка – F4

8) таким образом, правильный ответ – 1.

Возможные ловушки и проблемы: · вариантов может быть достаточно много, важно не пропустить ни один из них · можно попытаться выполнить алгоритм для каждой клетки лабиринта, но это займет много времени; поэтому лучше ограничиться только клетками-кандидатами · нужно правильно определить свойства, по которым клетку можно считать «кандидатом» · можно не заметить стенку и таким образом получить лишнее решение

Еще пример задания:

             
             
             
             
             
             
A B C D E F  

Сколько клеток приведенного лабиринта соответствуют требованию, что, выполнив предложенную ниже программу, РОБОТ уцелеет (не врежется в стену) и остановится в той же клетке, с которой он начал движение?

1) 1 2) 2 3) 3 4) 0

НАЧАЛО

ПОКА <слева свободно> вверх

ПОКА <сверху свободно> вправо

ПОКА <справа свободно> вниз

ПОКА <снизу свободно> влево

КОНЕЦ

             
             
 
 

       
 

 
             
             
   
 

       
             

Решение:

1) особенность этой задач в том, что РОБОТ проверяет стенку в одном направлении, а движется в другом

2) рассмотрим первый цикл:

ПОКА <слева свободно> вверх

понятно, что при движении вверх РОБОТ остановится в первой же клетке, где слева будет стена

3) рассуждая аналогично, находим, что во втором цикле при движении вправо РОБОТ останавливается в клетке, где есть стена сверху; в третьем цикле (движение вниз) РОБОТ останавливается в клетке, где есть стена справа;

4) наконец, в четвертом цикле РОБОТ останавливается в клетке, где есть стена снизу; при этом он должен попасть обратно в исходную клетку, обозначенную на рисунке красной точкой;

5) кроме этих четырех стенок, необходимо, чтобы коридор, выделенный на рисунке зеленым фоном, был свободен для прохода, иначе РОБОТ врежется в стенку

 

 

6) теперь отметим на карте все клетки-кандидаты, где снизу есть стена:

        ·    
  ·          
             
          ·  
    ·        
· · · · · ·  
A B C D E F  

7) при движении из клеток B5, D1, E1, E6, F1 и F3 РОБОТ врежется в стенку, потому что слева стены нет и условие «слева свободно» всегда истинно:

        ·    
  ·          
             
          ·  
    ·        
· · · · · ·  
A B C D E F  

8) начав движение с клетки A1, C1 или C2, РОБОТ также врезается в стенку и разрушается:

             
             
             
             
    ·        
· · ·        
A B C D E F  

 

 

9) и только путь, начатый в клетке B1, приводит РОБОТА обратно в точку старта:

             
             
             
             
             
  ·          
A B C D E F  

10) таким образом, только клетка B1 удовлетворяет условию задачи, поэтому правильный ответ – 1.

Еще пример задания:

В приведенном ниже фрагменте алгоритма, записанном на алгоритмическом языке, переменные a, b, c имеют тип «строка», а переменные i, k – тип «целое». Используются следующие функции:

Длина(a) – возвращает количество символов в строке a. (Тип «целое»)

Извлечь(a,i) – возвращает i -тый (слева) символ в строке a. (Тип «строка»)

Склеить(a,b) – возвращает строку, в которой записаны сначала все символы строки a, а затем все символы строки b. (Тип «строка»)

Значения строк записываются в одинарных кавычках (Например, a:='дом' ). Фрагмент алгоритма:

i:= Длина(a)

k:= 2

b:= 'А'

пока i > 0

Нц

c:= Извлечь(a,i)

b:= Склеить(b,c)

i:= i – k

Кц

b:= Склеить(b,'Т')

Какое значение будет у переменной b после выполнения вышеприведенного фрагмента алгоритма, если значение переменной a было ‘ПОЕЗД’?

1) ‘АДЕПТ’ 2) ‘АДЗЕОП’ 3) ‘АДТЕТПТ’ 4) ‘АДЗОТ’



B1 (базовый уровень, время – 1 мин)

Тема: Кодирование текстовой информации. Кодировка ASCII. Основные кодировки кириллицы.

Что нужно знать:

· все символы кодируются одинаковым числом бит[††] (алфавитный подход)

· чаще всего используют кодировки, в которых на символ отводится 8 бит (8-битные) или 16 бит (16-битные)

· при измерении количества информации принимается, что в одном байте 8 бит, а в одном килобайте (1 Кбайт) – 1024 байта, в мегабайте (1 Мбайт) – 1024 Кбайта

· после знака препинания внутри (не в конце!) текста ставится пробел

· чтобы найти информационный объем текста I, нужно умножить количество символов N на число бит на символ K:

· две строчки текста не могут занимать 100 Кбайт в памяти

· при кодировании текста каждому символу ставится в соответствие свой код

· символы-цифры в кодовой таблице идут подряд в порядке возрастания, от «0» до «9» (символ «0» имеет код 48, символ «9» – код 57)

· большие (прописные) латинские буквы в кодовой таблице идут подряд в алфавитном порядке от «A» до «Z»

· маленькие (строчные) латинские буквы в таблице кодировки идут подряд в алфавитном порядке, от «a» до «z»

· в большинстве кодовых таблиц (но не во всех!) русские буквы, как заглавные, так и строчные, также расположены по алфавиту (за исключением буквы «Ё»)

Ещё пример задания:

Автоматическое устройство осуществило перекодировку информационного сообщения на русском языке длиной в 20 символов, первоначально записанного в 2-байтном коде Unicode, в 8-битную кодировку КОИ-8. На сколько бит уменьшилась длина сообщения? В ответе запишите только число.

Решение:

1) при 16-битной кодировке объем сообщения – 16*20 бит

2) когда его перекодировали в 8-битный код, его объем стал равен– 8*20 бит

3) таким образом, сообщение уменьшилось на 16*20 – 8*20 = 8*20 = 160 бит

4) Ответ: 160 бит.

Возможные ловушки и проблемы: · нужно внимательно читать, в каких единицах требуется записать ответ

Ещё пример задания:

Автоматическое устройство осуществило перекодировку информационного сообщения на русском языке, первоначально записанного в 16-битном коде Unicode, в 8-битную кодировку КОИ-8. При этом информационное сообщение уменьшилось на 480 бит. Какова длина сообщения в символах?

Решение:

1) обозначим количество символов через N

2) при 16-битной кодировке объем сообщения – 16*N бит

3) когда его перекодировали в 8-битный код, его объем стал равен– 8*N бит

4) таким образом, сообщение уменьшилось на 16*N – 8*N = 8*N = 480 бит

5) отсюда находим N = 480/8 = 60 символов.

Ещё пример задания:

Определите информационный объем текста в битах

Бамбарбия! Кергуду!

Решение:

1) в этом тексте 19 символов (обязательно считать пробелы и знаки препинания)

2) если не дополнительной информации, считаем, что используется 8-битная кодировка (чаще всего явно указано, что кодировка 8- или 16-битная)

3) поэтому в сообщении 19*8 = 152 бита информации.


B2 (базовый уровень, время – 4 мин)

Тема: Поиск алгоритма минимальной длины для исполнителя.

Пример задания:

У исполнителя Калькулятор две команды, которым присвоены номера:







Дата добавления: 2015-08-29; просмотров: 829. Нарушение авторских прав; Мы поможем в написании вашей работы!



Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

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

Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Тема 5. Организационная структура управления гостиницей 1. Виды организационно – управленческих структур. 2. Организационно – управленческая структура современного ТГК...

Методы прогнозирования национальной экономики, их особенности, классификация В настоящее время по оценке специалистов насчитывается свыше 150 различных методов прогнозирования, но на практике, в качестве основных используется около 20 методов...

Классификация ИС по признаку структурированности задач Так как основное назначение ИС – автоматизировать информационные процессы для решения определенных задач, то одна из основных классификаций – это классификация ИС по степени структурированности задач...

Внешняя политика России 1894- 1917 гг. Внешнюю политику Николая II и первый период его царствования определяли, по меньшей мере три важных фактора...

Оценка качества Анализ документации. Имеющийся рецепт, паспорт письменного контроля и номер лекарственной формы соответствуют друг другу. Ингредиенты совместимы, расчеты сделаны верно, паспорт письменного контроля выписан верно. Правильность упаковки и оформления....

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия