title: Скачать презентацию или конспект Операции и выражения в языке Паскаль

extracted_text:
Операции и выражения

Арифметические операции
         Для каждого типа данных определены действия, применимые к его значениям. Например, если переменная относится к порядковому типу данных, то она может фигурировать в качестве аргумента стандартных функций
     ord(),
     pred()
     succ()

      К вещественным типам эти функции применить невозможно.

Операции - стандартные действия, разрешенные для переменных того или иного типа данных.

     Все операции  (за исключением унарных  и not), требуют двух операндов.

Логические операции
              (and, or, not, xor)
     применимы только к значениям типа boolean.
    результатом выполнения операций также являются величины типа boolean.
     Для данных логического типа определены следующие логические операции NOT - отрицание:                             NOT(True)=false; OR - логическое сложение(ИЛИ):  True OR False = True; AND - логическое умножение(И):  False AND True = False; XOR - исключающее ИЛИ:
        True XOR True = false;
        True XOR False = True;

2.     Операции сравнения (=, <>, >, <, <=, >=) применимы ко всем базовым типам. Их результатами также являются значения типа boolean.
Операции целочисленной арифметики применимы  только к целым типам. Их результат - целое число, тип которого зависит от типов операндов.
        a div b - деление а на b нацело (деление на 0 запрещено, поэтому в таких случаях операция выдает ошибку). Результат будет принадлежать к типу данных, общему для тех типов, к которым принадлежат операнды.
        Например, (shortint div byte = integer). Пояснить это можно так: integer - это минимальный тип, подмножествами которого являются одновременно и byte, и shortint.

a mod b - взятие остатка при делении а на b нацело. Тип результата, как и в предыдущем случае, определяется типами операндов, а 0 является запрещенным значением для b. В отличие от математической операции mod, результатом которой всегда является неотрицательное число, знак результата "программистской" операции mod определяется знаком ее первого операнда. Таким образом, если в математике (-2 mod 5)=3, то у нас (-2 mod 5)= -2.
a shl k - сдвиг значения а на k битов влево (это эквивалентно умножению значения переменной а на 2k). Результат операции будет иметь тот же тип, что и первый ее операнд (а).
       a shr k - сдвиг значения а на k битов вправо (это эквивалентно делению значения переменной а на 2k нацело). Результат операции будет иметь тот же тип, что и первый ее операнд (а).
       and,or,not,xor - операции двоичной арифметики, работающие с битами двоичного представления целых чисел, по тем же правилам, что и соответствующие им логические операции.
         Операции общей арифметики (+, -, *, /) применимы ко всем арифметическим типам. Их результат принадлежит к типу данных, общему для обоих операндов (исключение составляет только операция дробного деления /, результат которой всегда относится к вещественному типу данных).

Стандартные арифметические функции
      К арифметическим операциям примыкают и стандартные арифметические функции. Их список с кратким описанием приводится по схеме:

Описание
Тип аргумента
Тип результата
abs(x)  Абсолютное значение (модуль) числа Арифметический                                                                  Совпадает с типом аргумента
arctan(x) Арктангенс (в радианах) Арифметический Вещественный
cos(x) Косинус (в радианах) Арифметический Вещественный
exp(x) Экспонента (ex) Арифметический Вещественный
frac(x) Взятие дробной части числа Арифметический Вещественный
int(x) Взятие целой части числа Арифметический Вещественный
ln(x) Натуральный логарифм (по основанию e) Арифметический Вещественный

odd(x) Проверка нечетности числа Целый boolean
Pi Значение числа – Вещественный
round(x) Округление к ближайшему целому Арифметический Целый
trunc(x) Округление "вниз" - к ближайшему меньшему целому  Арифметический Целый
sin(x) Синус (в радианах) Арифметический Вещественный
sqr(x) Возведение в квадрат Арифметический Вещественный
sqrt(x) Извлечение квадратного корня Арифметический Вещественный.

Арифметические выражения

Все арифметические операции можно сочетать друг с другом - конечно, с учетом допустимых для их операндов типов данных.
    В роли операндов любой операции могут выступать переменные, константы, вызовы функций или выражения, построенные на основе других операций. Все вместе и называется выражением. Возможно определение выражения через выражение.
Примеры арифметических выражений:
(x<0) and (y>0) - выражение, результат которого принадлежит к типу boolean;

(x mod k) + min(a,b) + trunc(z) - сочетание арифметических операций и вызовов функций;

odd(round(x/abs(x))) - "многоэтажное" выражение.

Полнота вычислений
           В общем случае вычисление сложного логического выражения прекращается в тот момент, когда его окончательное значение становится понятным (например, true and (b<0)). Зачастую такой подход позволяет заметно сэкономить на выполнении "лишних" действий. Скажем, если есть некоторая сложно вычислимая функция my_func, вызов которой входит в состав выражения
     if (x<=0) and my_func(z+12), то для случая, когда x положительно, этих сложных вычислений можно избежать.
         Однако включение директивы {$B+} принудит компилятор завершить эти вычисления даже в таком случае. Ее выключение {$B-} вернет обычную схему вычислений.

Порядок вычислений
      Если в выражении расставлены скобки, то вычисления производятся в обычном порядке  (чем меньше глубина вложенности скобок, тем позже вычисляется заключенная в них операция). Если же скобок нет, то сначала вычисляются значения операций с более высоким приоритетом, затем - с менее высоким. Несколько подряд идущих операций одного приоритета вычисляются в последовательности "слева направо".

 Приоритеты операций языка Pascal

Операции   Приоритет
Унарные  операции +, -, not, @, ^, #     Первый(высший)
Операции *, /, div, mod, and, shl, shr             Второй
эквивалентные умножению
Операции  +,-, or, xor                                      Третий
эквивалентные сложению
Операции сравнения  =, <>, >, <, <=, >=, in  Четвертый

Замечание: Вызов любой функции имеет более высокий приоритет, чем все внешние относительно этого вызова операции. Выражения, являющиеся аргументами вызываемой функции, вычисляются в момент вызова.
Примеры выражений (с указанием последовательности вычислений) для целых чисел:
a + b * c / d	           (результат принадлежит к вещест-
   3     1     2		 	венному типу данных);
a * not b or c * d = 0	(результат принадлежит к логиче-
  2   1       4    3   5		 скому типу данных);
-min(a + b, 0) * (a + 1) 	(результат принадлежит к целочис-
3 2      1          5     4		 ленному типу данных).
          Совместимость типов данных

      В общем случае при выполнении арифметических (и любых других) операций компилятору требуется, чтобы типы операндов совпадали: нельзя, например, сложить массив и множество, нельзя передать вещественное число функции, ожидающей целый аргумент, и т.п.
     В то же время, любая процедура или функция, написанная в расчете на вещественные значения, сможет работать и с целыми числами.

Правила взаимозаменяемости
различных типов данных

Эквивалентность - это наиболее высокий уровень соответствия типов. Она требуется при действиях с указателями, а также при вызовах подпрограмм.
     Два типа - Т1 и Т2 - будут эквивалентными, если верно хотя бы одно  из перечисленных ниже:
Т1 и Т2 совпадают;
Т1 и Т2 определены в одном объявлении типа;
Т1 эквивалентен некоторому типу Т3, который эквивалентен типу Т2.

например:
type
    T2 = T1;
    T3 = T1;
    T4,T5 = T2;
  Здесь эквивалентными будут
  Т1 и Т2;    Т1 и Т3;
  Т1 и Т4;    Т1 и Т5;     Т4 и Т5.

  Т2 и Т3 - не эквивалентны!

Совместимость типов
Совместимость типов требуется при конструировании выражений, а также при вызовах подпрограмм (для параметров-значений).
 Совместимость означает, что для переменных этих типов возможна операция присваивания - хотя во время этой операции присваиваемое значение может измениться: произойдет неявное приведение типов данных
Два типа Т1 и Т2 будут совместимыми, если верен хотя бы один вариант из перечисленных ниже:

Т1 и Т2 эквивалентны (в том числе совпадают);
Т1 и Т2 - оба целочисленные или оба вещественные;
Т1 и Т2 являются подмножествами одного типа;
Т1 является некоторым подмножеством Т2;
Т1 - строка, а Т2 - символ;
Т1 - это тип pointer, а Т2 - типизированный указатель
Т1 и Т2 - оба процедурные, с одинаковым количеством попарно эквивалентных параметров, а для функций - с эквивалентными типами результатов
Совместимость по присваиванию
        В отличие от простой совместимости, совместимость по присваиванию гарантирует, что в тех случаях, когда производится какое-либо присваивание (используется запись вида a:=b; или происходит передача значений в подпрограмму  или из нее и т.п.), не произойдет никаких изменений присваиваемого значения.
      Два типа данных Т1 и Т2 называются совместимыми по присваиванию, если выполняется хотя бы один вариант из перечисленных ниже:
Т1 и Т2 эквивалентны, но не файлы;
Т1 и Т2 совместимы, причем Т2 - некоторое подмножество в Т1;
Т1 - вещественный тип, а Т2 - целый.

Приведение типов данных

          Неявное приведение типов данных

        Как известно, тип результата арифметических операций (а следовательно, и выражений) может отличаться от типов исходных операндов. Например, при "дробном" делении ( / ) одного целого числа на другое целое в ответе все равно получается вещественное. Такое изменение типа данных называется неявным приведением типов.

      Если в некоторой операции присваивания участвуют два типа данных совместимых, но не совместимых по присваиванию, то тип присваиваемого выражения автоматически заменяется на подходящий. Это тоже неявное приведение. Причем в этих случаях могут возникать изменения значений. Скажем, если выполнить такую последовательность операторов
a:= 10;			{a: byte}
a:= -a;
writeln(a);
То результат будет
 не -10, а 246 (246 = 256 - 10).

       Неявное приведение типов данных можно отключить, если указать директиву компилятора {$R+}, которая принуждает компилятор всегда проверять границы и диапазоны.
    Если эта директива включена, то во всех ситуациях, в которых по умолчанию достаточно совместимости типов данных, будет необходима их эквивалентность.
    По умолчанию такая проверка отключена, поэтому обычно считается что эта директива находится в выключенном состоянии {$R-}.

Явное приведение типов данных
       Тип значения можно изменить и явным способом: просто указав новый тип выражения, например:
          a:= byte(b). В этом случае переменной а будет присвоено значение, полученное новой интерпретацией значения переменной b. Скажем, если b имеет тип shortint и значение -23, то в a запишется 233 (= 256 - 23).
        Приводить явным образом можно и типы, различающиеся по длине. Тогда значение может измениться в соответствии с новым типом. Скажем, если преобразовать тип longint в тип integer, то возможны потери из-за отсечения первых двух байтов исходного числа. Например, результатом попытки преобразовать число 100 000 к типу integer станет число 31 072, а к типу word - число 34 464.

Функции, изменяющие тип данных

   Список стандартных функций, аргумент и результат которых принадлежат к различным типам данных:
trunc:     real -> integer;
round:    real -> integer;
val: string -> byte/integer/real;
chr: byte -> char;
ord: <порядковый_тип> -> longint;


title: Скачать презентацию или конспект Решение задач линейного программирования в MS Excel

extracted_text:
Решение задач линейного программирования в MS Excel

Общая задача линейного программирования решается симплексным методом

Симплекс (лат. simplex - простой) – простейший выпуклый многогранник в n-мерном пространстве с n+1 вершиной (например, тетраэдр в 3-мерном пространстве)

Если задача линейного программирования имеет оптимальное решение, то оно соответствует хотя бы одной угловой точке многогранника решений (и совпадает с одним из допустимых базисных решений системы ограничений)
На рисунке: оптимальное решение находится в одной из вершин многоугольника решений А, В, С, D
Геометрический смысл симплексного метода состоит в последовательном переходе от одной вершины многогранника ограничений к соседней, в которой целевая функция принимает лучшее (по крайней мере, не худшее) значение
Впервые симплексный метод был предложен американским ученым Дж. Данцигом в 1949 г.
Джордж Бернард Данциг (1914-2005) – американский математик, разработал симплексный алгоритм, считается основоположником методов линейного программирования
Леонид Витальевич Канторович (1912-1986) – советский математик и экономист, лауреат Нобелевской премии по экономике 1975 года «за вклад в теорию оптимального распределения ресурсов». Один из создателей линейного программирования
Идеи симплексного метода были разработаны в 1939 г. российским ученым Л.В.Канторовичем
Симплексный метод позволяет решить любую задачу линейного программирования
В настоящее время он используется для компьютерных расчетов

Рассмотрим решение задачи линейного программирования в MS Excel
В MS Excel для решения задачи линейного программирования используется надстройка ПОИСК РЕШЕНИЯ

Сначала надстройку Поиск решения необходимо подключить (до первого использования)

В MS Excel 2003: Сервис / Надстройки / Поиск решения /
OK

После этого команда Поиск решения включена в меню Сервис
В MS Excel 2007: 1) Кнопка Office (левый верхний угол окна программы)2) Кнопка Параметры Excel (внизу окна меню)
3) Надстройки
1
2
3
В MS Excel 2007: 4) Кнопка Перейти (внизу окна Параметры Excel)
4
3
В окне Надстройки установить флажок и нажать ОК

В MS Excel 2007 кнопка Поиск решения появится во вкладке Данные
В MS Excel 2007 кнопка Поиск решения появится во вкладке Данные

Решим в MS Excel задачу линейного программирования
1
2
Решим в MS Excel задачу линейного программирования
3
4
СРС
СРС
Ответы:
1
2
3
4
Решим в MS Excel задачу линейного программирования
1. Создадим область переменных
Ячейки В2:В6 будут играть роль переменных
(пока они пусты)
Решим в MS Excel задачу линейного программирования
2. Введем формулу вычисления значений целевой функции

Например, в ячейку А8
Решим в MS Excel задачу линейного программирования
3. Создадим область ограничений
В ячейках А11:А13 будем вычислять левые части ограничений в системе

В ячейках В11:В13 введем правые части ограничений системы
Решим в MS Excel задачу линейного программирования
3. Создадим область ограничений
В ячейках А11:А13 будем вычислять левые части ограничений в системе
Первое ограничение
Решим в MS Excel задачу линейного программирования
3. Создадим область ограничений
В ячейках А11:А13 будем вычислять левые части ограничений в системе
Второе ограничение
Решим в MS Excel задачу линейного программирования
3. Создадим область ограничений
В ячейках А11:А13 будем вычислять левые части ограничений в системе
Третье ограничение
Решим в MS Excel задачу линейного программирования
4. Вызовем окно диалога Поиск решения
При этом удобно, если активной ячейкой является ячейка со значением целевой функции
Решим в MS Excel задачу линейного программирования
Устанавливаем целевую ячейку А8 (там где вычисляется значение целевой функции)
Указываем направление оптимизации – минимизация (по условию)
В поле Изменяя ячейки указываем ячейки переменных В2:В6
Решим в MS Excel задачу линейного программирования
Укажем ограничения
4) Нажимаем кнопку Добавить

Появится окно Добавление ограничения

Решим в MS Excel задачу линейного программирования
Укажем ограничения
5) Неотрицательность переменных:

Нажать кнопку Добавить
6) Остальные ограничения:

Нажать OK
Решим в MS Excel задачу линейного программирования
Осталось нажать кнопку Выполнить

Решим в MS Excel задачу линейного программирования
Результаты

Ответ:
Литература
Кремер Н.Ш., Путко Б.А. Исследование операций в экономике. - М.: ЮНИТИ, 2003. - 407 с.
Красс М.С., Чупрынов Б.П. Математика для экономистов. - СПб.: Питер, 2005. - 464 с.


title: Скачать презентацию или конспект Информационные процессы в живой и неживой природе

extracted_text:
Информация и
информационные
процессы в живой
и неживой природе
Информатика – наука, которая изучает процессы хранения, обработки и передачи информации.

Информация – сведения об объектах и явлениях окружающей среды, их параметрах, свойствах и состоянии, уменьшающие неполноту знаний.
Информационный процесс - процесс передачи информации от источника
информации к приёмнику.
Источник информации – объект,
который передаёт информацию.
Приёмник информации – объект,
который принимает информацию.
Макрообъекты
живые
неживые
Живые объекты
растения
люди
животные
Неживые объекты
машины
явления
природы
здания
Что такое информатика?
Что такое информация?
 Что такое передача информации?

1. Приведите примеры передачи информации
от источника к приемнику.

2. Перечислите  примеры  передачи
информации объектов живой природы.

3. Перечислите  примеры  передачи
 информации объектов неживой природы.
Домашнее задание:

Записи в тетрадях учить


title: Скачать презентацию или конспект Структурная схема компьютера

extracted_text:
Структурная схема компьютера
Взаимодействие устройств компьютера
Общая структурная схема компьютера
Компьютер – система взаимосвязанных компонентов
Каждое внешнее устройство взаимодействует с процессором ПК через
специальный блок – КОНТРОЛЛЕР, который преобразует информацию,
поступающую от процессора в соответствующие сигналы, управляющие
работой устройства. Существуют контроллеры монитора, клавиатуры,
принтера, дисковода…
Данные, управляющие сигналы, адреса должны передаваться от одного устройства к другому.
Следовательно, в компьютере должно быть некое устройство, которое организует передачу информации между всеми его составными частями. Эти функции выполняет системная шина.
Системная шина
Системная шина – информационная магистраль, которая связывает друг с другом все устройства компьютера
(группа токопроводящих кабелей
или линий на системной плате)
	По системной шине осуществляется передача данных, адресов, управляющих команд, поэтому системная шина состоит из шины данных, адресной шины и шины команд.

	Вопрос:    Как вы думаете, будет ли системная шина влиять на параметры всего компьютера?
Системная шина предназначена для передачи информации, закодированной в двоичном коде.Характеристика системной шины, определяющая количество бит информации, передаваемых одновременно, называется разрядностью.
Ответьте на вопросы:
	К каким изменениям приведет увеличение разрядности шины данных?

Производительность шины
	Характеристика системной шины, определяющая количество информации, передаваемой за секунду.
Адресная шина. У процессоров Intel Pentium адресная шина 32-разрядная, то есть состоит из 32 параллельных линий. Комбинация из 32 нулей и единиц образует 32-разрядный адрес, указывающий на одну из ячеек оперативной памяти.
Шины данных. В компьютерах, собранных на базе процессоров Intel Pentium, шина данных 64-разрядная, то есть состоит из 64 линий, по которым за один раз на обработку поступают сразу 8 байт.
Шины команд. В большинстве современных процессоров шина команд 32-разрядная, хотя существуют 64-разрядные и даже 128-разрядные процессоры.
Системный блок
Блок старого образца,
Горизонтальный - desktop
Последовательность команд для выполнения некоторого задания в компьютере определяют как программу.
Процессор обеспечивает выполнение команд программы, повторяя следующие действия:
считать команду из памяти,
расшифровать команду,
обеспечить ее выполнение,
считать следующую команду, и так до тех пор, пока не закончатся команды программы.
Таким образом, компьютер работает в соответствии с принципом программного управления, то есть обеспечивает автоматическое выполнение программы, хранящейся в памяти компьютера.
Порты
Связь компьютера с различными внешними устройствами осуществляется через порты – специальные разъемы, расположенные на тыльной стороне системного блока.

Ответим на вопросы:
Вопрос: Любой порт служит для соединения устройств, для передачи информации между устройствами. Если порт получил название параллельный, то как выполняется передача информации?
Ответ: Вероятно, закодированная двоичная информация передается параллельно по нескольким проводам.

Вопрос: Через параллельный порт обычно передается 8 бит данных по 8 параллельным проводам. Подключение каких устройств должно осуществляться через параллельный порт?
Ответ: Подключение устройств, предназначенных для передачи большого количества данных, например принтера, сканера.

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

Любой современный системный блок содержит разъемы для подключения дополнительных устройств (слоты).

Наличие слотов расширения позволяет модифицировать компьютер, подключая к нему новые устройства. Главный принцип построения современного персонального компьютера — Принцип открытой архитектуры — правила построения компьютера, в соответствии с которыми каждый новый узел (блок) совместим со старым и легко устанавливается на компьютере.
Домашнее задание:
Прочитать Тему 21 Базового курса (стр. 281 - 289)
Письменно ответить на вопрос 14 на стр. 289, привести примеры с указанием источников (можно ксерокопии)
Письменно ответить на вопрос: В чем преимущества использования башенного типа системных блоков над настольными?
Всем спасибо!
Все свободны!


title: Скачать презентацию или конспект Графическое решение уравнений на Visual Basic

extracted_text:
Графическое решение уравнений
Практическая 2.2
Информатика и ИКТ 9 класс

Автор презентации
 «Графическое решение уравнений»
 Помаскин Юрий Иванович  -
 учитель  информатики МБОУ СОШ№5
 г. Кимовска Тульской области.
Презентация сделана как учебно-наглядное пособие к учебнику   «Информатика и ИКТ 9» автор Н.Д. Угринович. Предназначена для демонстрации на  уроках изучения нового материала
Используемые  источники:
Н.Д.Угринович «Информатика и ИКТ 9 », Москва, БИНОМ  Лаборатория знаний, 2012  стр.105 -108.

Примечание: проект адаптирован под использование среды программирования
 Visual Basic 6
Графическое решение уравнений
Цель работы: научиться создавать компьютерные модели графического решения уравнений на языке Visual Basic 6

Задание : разработать проект в котором приближенно графически решается уравнение  x^3 - sin (x) = 0

Теория вопроса
    Решить уравнение, значит найти при каких значениях переменной х, выражение равно 0.
    Графически это означает, что решением уравнения будут точки пересечения графика с осью х.
     Т.о. задача сводится к построению графика и нахождению точек пересечения этого графика с осью х на выбранном интервале

Корни уравнения

Выполнение работы
На форме поместим графическое поле и две командные кнопки

Код программы

Уравнение, корни которого ищем.

Здесь можно заменить уравнение и найти его корни в заданном диапазоне

Результат после запуска программы

Три корня
(приблизительно)
Х1 = - 0,9
Х2 = 0
Х3 = 0,9

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

Задание: проверь работу программы на разобранном примере и найди корни предложенных уравнений.

Задание
Найди корни предложенных уравнений.
 Результаты представь в тетради в виде таблицы.
Графическое решение уравнений

Примечание: уравнения предлагает преподаватель по своему усмотрению


title: Скачать презентацию или конспект Создание и редактирование текстового документа

extracted_text:
Создание и редактирование текстового документа
8 класс
Текстовый редактор
Каково назначение текстового редактора?
Что такое редактирование текста?
Приведите примеры.
Что такое форматирование текста?
Приведите примеры.
Какие режимы работы с текстовым редактором вы знаете?
Текстовый редактор
Дайте определение текстового редактора.

ТР – это прикладная программа (общего назначения), позволяющая создавать текстовые документы, редактировать их, просматривать содержимое документа на экране, распечатывать документ.
Текстовый редактор
Какие действия предусмотрены в режиме «ввод-редактирование»?.
Ввод текста.
Вставка объектов.
Редактирование:
Удаление лишней буквы.
Вставка пропущенной буквы.
Замена неправильной буквы.
Удаление объекта.
Задание на практическую работу:
Пуск/ Программы/ MS office /Word
Создать новый текстовый файл. Сохранить в папке Work: файл/ сохранить как / выбрать папку Work / имя файла/ сохранить.
На панели «Рисование» открыть фигурный текст:
Выбрать стиль, ввести текст.
ОК (Да)

Задание на практическую работу:
Вставить рисунок: Вставка/ рисунок/  из файла/    - найти нужный файл в каталоге / вставить.
В контекстном меню выбрать «Формат рисунка»  и вкладку «Положение» :
Задание на практическую работу:
Вводим текст.
Проверяем орфографию.
Форматируем текст:
Форматируем абзац:
Формат/ абзац
Формат/ шрифт
Кегль (Гарнитура)
Начертание
Размер (пт)
Цвет
Смещение от базовой линии
Эффекты
Кернинг (межсимвольный интервал)

Результат практической работы:
Текст с заголовком и картинкой:
Подготовка к печати
При подготовке к печати нажмите кнопку предварительный просмотр.
Внесите необходимые исправления.

Работа с фрагментами текста
Перед началом работы с фрагментом (блоком) его необходимо выделить.
Действия с фрагментами (блоками) текста:

изменение шрифта;
переформатирование;
удаление;
перенос;
копирование.
Расположение окон
Каскадом:

Мозаикой:

Гришкова Татьяна Павловна
МAОУ, СОШ № 50 города Томска


title: Скачать презентацию или конспект Логическое программирование

extracted_text:
Логическое программирование
Презентация 10
Решение логических задач

Содержание
Определение и алгоритм решения головоломок
Поиск в пространстве решений (в глубину/ширину)
Примеры решения логических задач
Общие выводы

2
Логические задачи (головоломки)
Логическая головоломка состоит из нескольких фактов относительно небольшого числа объектов, которые имеют различные атрибуты.
Минимальное число фактов относительно объектов и атрибутов связано с желанием выдать единственный вариант назначения атрибутов объектам.
Зачастую в задаче устанавливается взаимно-однозначное соответствие между двумя множествами. Если этих ограничений нет, то задача сильно усложняется (при неоднозначности могут появиться альтернативные решения, потребоваться вмешательство пользователя в решение и т.п.).
Общий алгоритм решения головоломок:
Перечисляются действующие лица, их допустимые атрибуты
Задаются известные факты об атрибутах лиц и их взаимосвязях
Задается вопрос, соответствующий исходному заданию, происходит вызов предиката поиска решений
Решение выдается в виде конкретизированных переменных (если таковые были заданы), либо выводится на экран командами типа write

3
Пример головоломки
Условие:
	Беседуют трое друзей: Белов, Рыжов, Чернов.
	Брюнет сказал Белову: «Посмотри, один из нас блондин, другой – рыжий, третий – брюнет, но ни у кого цвет волос не соответствует его фамилии».
Вопрос: какой цвет волос у каждого собеседника?

4
Решение головоломки
surname('Белов').
surname('Чернов').
surname('Рыжов').

color('рыжий').
color('светлый').
color('черный').

hair(X, Y) :-
  surname(X), color(Y),
  X='Белов',
  not(Y='черный'), not(Y='светлый').

hair(X, Y) :-
  surname(X), color(Y),
  X='Чернов',
  not(Y='черный'), not(hair('Белов', Y)).

hair(X, Y) :-
  surname(X), color(Y),
  X='Рыжов',
  not(hair('Белов', Y)), not(hair('Чернов', Y)).

5
Поиск решения головоломки
% Конкретизируем переменные X и Y допустимыми значениями
% эти значения и будут искомыми решениями задачи

?- hair(X, Y).

X = 'Белов'
Y = рыжий ;

X = 'Чернов'
Y = светлый ;

X = 'Рыжов'
Y = черный ;

No

6
Более сложный пример: поиск соответствий
В автомобильных гонках три первых места заняли Алеша, Петя и Коля. Какое место занял каждый из них, если Петя занял не второе и не третье место, а Коля - не третье?

Сперва запишем факты (очевидные данные):
/* База данных имен */
имя(алеша).
имя(петя).
имя(коля).
/* База данных призовых мест  */
место(первое).
место(второе).
место(третье).

7
Решение головоломки
Запишем правила и предикат поиска решения
/* Устанавливаем взаимно-однозначное соответствие
между базами данных, X - элемент из базы данных имен,
Y - элемент из базы данных занятых мест */

/* Петя занял не второе и не третье место */
соответствие(X, Y) :- имя(X),  X=петя,
         место(Y), not(Y=второе), not(Y=третье).

/* Коля занял не третье место */
соответствие(X, Y) :- имя(X), X=коля, место(Y), not(Y=третье).

соответствие(X, Y) :- имя(X),  X=алеша, место(Y).

/* У всех ребят разные места */
решение(X1,Y1,X2,Y2,X3,Y3) :-
         X1=петя, соответствие(X1,Y1),
         X2=коля, соответствие(X2,Y2),
         X3=алеша, соответствие(X3,Y3),
         Y1\=Y2, Y2\=Y3, Y1\=Y3.
8
Запускаем решатель…
 ?- решение(X1,Y1,X2,Y2,X3,Y3).

X1 = петя
Y1 = первое

X2 = коля
Y2 = второе

X3 = алеша
Y3 = третье

9
Логические задачи
Пространство состояний - это граф, вершины которого соответствуют ситуациям, встречающимся в задаче ("проблемные ситуации"), а решение задачи сводится к поиску пути в этом графе.
Примеры задач, где используется поиск в пространстве состояний:
Ханойские башни
Задача о волке, козе и капусте
Игра в 15
Задача коммивояжера
Другие логические задачи (эвристика, олимпиадные задачи, проблемы ИИ,…)
Рассмотрим на примерах, как формулируются задачи в терминах пространства состояний, а также обсудим общие методы решения сооотв. задач.
Процесс решения задачи включает в себя поиск в графе, при этом, как правило, возникает проблема, как обрабатывать альтернативные пути поиска. Мы рассмотрим две основные стратегии перебора альтернатив: поиск в глубину и поиск в ширину.

10
Пример: задача с кубиками
Задача состоит в выработке плана переупорядочивания кубиков, поставленных друг на друга, как показано на рисунке. На каждом шагу разрешается переставлять только один кубик. Кубик можно взять только тогда, когда его верхняя поверхность свободна. Кубик можно поставить либо на стол, либо на другой кубик. Для того, чтобы построить требуемый план, мы должны отыскать последовательность ходов, реализующую заданную трансформацию.
Эту задачу можно представлять себе как задачу выбора среди множества возможных альтернатив. В исходной ситуации альтернатива всего одна: поставить кубик С на стол. После того как кубик С поставлен на стол, мы имеем три альтернативы:
поставить А на стол или
поставить А на С, или
поставить С на А.

11
Граф состояний
Как показывает рассмотренный пример, с задачами такого рода связано два типа понятий:
Проблемные ситуации.
Разрешенные ходы или действия, преобразующие одни проблемные ситуации в другие.
Проблемные ситуации вместе с возможными ходами образуют направленный граф, называемый пространством состояний. Вершины графа соответствуют проблемным ситуациям, дуги - разрешенным переходам из одних состояний в другие. Задача отыскания плана решения задачи эквивалентна задаче построения пути между заданной начальной ситуацией ("стартовой" вершиной) и некоторой указанной заранее конечной ситуацией, называемой также целевой вершиной.

12
Примечание:
Каждому разрешенному ходу или действию можно приписать его стоимость. Например, в нашей задаче стоимости, приписанные перемещениям кубиков, будут указывать нам на то, что некоторые кубики перемещать труднее, чем другие. В тех случаях, когда каждый ход имеет стоимость, мы заинтересованы в отыскании решения минимальной стоимости. Стоимость решения - это сумма стоимостей дуг, из которых состоит "решающий путь" - путь из стартовой вершины в целевую. Либо может потребоваться найти кратчайший путь по кол-ву состояний…
Решение задачи о кубиках
% удаление элемента Х из списка, результат - в L
del(X, [X | L], L).
del(X, [Y | L], [Y | L1]):- del(X, L, L1).

% переход между состояниями: s(X, Y)
% где X - предыдущий, Y - последующий допустимый шаг/состояние
% перенести верхний кубик Top1 на столбик Stack2
s( Stacks, [Stackl, [Top1 | Stack2] | OtherStacks] ) :-
  del([Top1 | Stackl], Stacks, Stacksl),    % Найти первый столбик
  del(Stack2, Stacksl, OtherStacks).        % Найти второй столбик

goal(Situation):-
  member([a,b,c], Situation).           % Целевое состояние

Алгоритмы поиска реализуются в программе в виде отношения:
	solve(Start, Solution)
	где Start — начальный узел в пространстве состояний,
	a Solution — путь от узла Start до любого целевого узла.
% Вызов поиска:
?- solve([[c,a,b], [], []], Solution).   % Определение см. далее
13
Стратегия поиска в глубину
Для того, чтобы найти решающий путь Sol из заданной вершины N в некоторую целевую вершину, необходимо:
если N - это целевая вершина, то положить Sol = [N], или
если для исходной вершины N существует вершина-преемник N1, такая, что можно провести путь Sol1 из N1 в целевую вершину, то положить Sol = [N | Sol1].

% целевая вершина
solve(N, [N]):-
  goal(N).

% составной путь
solve(N, [N | Sol1]):-
  s(N, N1),
  solve(N1, Sol1).

14
Рис. 11. 4.  Пример простого пространства состояний:
а   -  стартовая вершина,   f    и   j   -  целевые вершины.
Порядок, в которой происходит проход по вершинам пространства
состояний при поиске в глубину: а, b, d, h, e, i, j.
Найдено решение [a, b, e, j].  После возврата: [а, с, f].

Оптимизация поиска: избавляемся от циклов
Мы говорим "в глубину", имея в виду тот порядок, в котором рассматриваются альтернативы в пространстве состояний. Всегда, когда алгоритму поиска в глубину надлежит выбрать из нескольких вершин ту, в которую следует перейти для продолжения поиска, он предпочитает самую "глубокую" из них. Самая глубокая вершина - это вершина, расположенная дальше других от стартовой вершины
Поиск в глубину наиболее адекватен рекурсивному стилю программирования, принятому в Прологе. Причина этого состоит в том, что, обрабатывая цели, пролог-система сама просматривает альтернативы именно в глубину.

Очевидное усовершенствование –
добавление механизма обнаружения циклов:
Ни одну из вершин, уже содержащихся в пути,
построенном из стартовой вершины в текущую
вершину, не следует вторично рассматривать
в качестве возможной альтернативы продолжения
поиска. Правило можно сформулировать в виде:

depthfirst( Path, Node, Solution)

15
Начинаясь в а, поиск заканчиваетсябесконечным циклом между  d  и  h:
a, b, d, h, d, h, d ...
Реализация поиска в глубину без зацикливаний
% solve( Node, Solution):
% Решение Solution представляет собой ациклический путь (узлы в
% котором указаны в обратном порядке) между узлом Node и целью

solve( Node, Solution):-
  depthfirst( [], Node, Solution).

% depthfirst( Path, Node, Solution):
% решение Solution формируется в результате продления пути
% [Node | Path] до целевого узла

depthfirst( Path, Node, [Node | Path] )  :-
   goal( Node).

depthfirst( Path, Node, Sol)  :-
  s( Node, Node1),
  not member( Node1, Path),                % Предотвращение цикла
  depthfirst( [Node | Path], Node1, Sol).

16
Поиск в ширину
В противоположность поиску в глубину стратегия поиска в ширину предусматривает переход в первую очередь к вершинам, ближайший к стартовой вершине. В результате процесс поиска имеет тенденцию развиваться более в ширину, чем в глубину (см. рис).
Поиск в ширину программируется не так легко, как поиск в глубину. Причина состоят в том, что нам приходится сохранять все множество альтернативных вершин-кандидатов, а не только одну вершину, как при поиске в глубину. Более того, если мы желаем получить при помощи процесса поиска решающий путь, то одного множества вершин недостаточно. Поэтому мы будем хранить не множество вершин-кандидатов, а множество путей-кандидатов. Таким образом, цель
        breadthfirst( Paths, Solution)
истинна только тогда, когда существует путь из множества кандидатов Пути, который может быть продолжен вплоть до целевой вершины. Этот продолженный путь и есть Solution.

17
Граф поиска в ширину
18
Простое пространство состояний:
а  - стартовая вершина,f  и  j  - целевые вершины.

Применение стратегии поиска в ширинудает следующий порядок прохода по вершинам: а, b, c, d, e, f.

Более короткое решение:
[a, c, f]
найдено раньше, чем более длинное:
[а, b, e, j]

Реализация поиска в ширину
Чтобы выполнить поиск в ширину при заданном множестве путей нужно:
если голова первого пути - это целевая вершина, то взять этот путь в качестве решения
иначе удалить первый путь из множества кандидатов и породить множество всех возможных продолжений этого пути на один шаг; множество продолжений добавить в конец множества кандидатов, а затем выполнить поиск в ширину с полученным новым множеством.
% solve( Start, Solution):
% Решение Solution – путь из вершины Start к цели

solve( Start, Solution)  :-
  breadthfirst( [ [Start] | Z] - Z, Solution).

breadthfirst( [ [Node | Path] | _] - _, [Node | Path] )  :-
  goal( Node).

breadthfirst( [Path | Paths] - Z, Solution)  :-
  extend( Path, NewPaths),
  conc( NewPaths, Z1, Z), % Добавить NewPaths в конец
  Paths \== Z1,           % Множество возможных путей – не пустое
  breadthfirst( Paths - Z1, Solution).
19
Задача о ханойской башне
Автор: математик Люка,1883 год.  "Где-то в непроходимых джунглях, недалеко от города Ханоя, есть монастырь бога Брамы. В начале времен, когда Брама создавал Мир, он воздвиг в этом монастыре три высоких алмазных стержня и на один из них возложил 64 диска, сделанных из чистого золота. Он приказал монахам перенести эту башню на другой стержень (в соответствии с правилами, разумеется). С этого времени монахи работают день и ночь. Когда они закончат свой труд, наступит конец света."
В нашем примере будем использовать всего 4 диска и 3 стержня.
Правила перемещения дисков:
разрешается снимать со стержня только верхний диск,
запрещается класть больший диск на меньший,
при каждом ходе передвигается только один диск.

В решении будем использовать рекурсивный поиск всевозможных вариантов.

20
Решение задачи о Ханойских башнях
% move(число_дисков, откуда, куда, через)

move(1,X,Y,_) :-
   write('Перемещаем диск с '),
   write(X), write(' стержня на '),
   write(Y), nl.

move(N,X,Y,Z) :-
   N>1,
   M is N-1,
   move(M,X,Z,Y),
   move(1,X,Y,_),
   move(M,Z,Y,X).

% Предикат для запуска поиска решений задачи размерности X
hanoi(X):- move(X, 'лев.', 'прав.', 'центр.').
21
Находим решение ханойской задачи…
?- hanoi(4).
Перемещаем диск с лев. стержня на центр.
Перемещаем диск с лев. стержня на прав.
Перемещаем диск с центр. стержня на прав.
Перемещаем диск с лев. стержня на центр.
Перемещаем диск с прав. стержня на лев.
Перемещаем диск с прав. стержня на центр.
Перемещаем диск с лев. стержня на центр.
Перемещаем диск с лев. стержня на прав.
Перемещаем диск с центр. стержня на прав.
Перемещаем диск с центр. стержня на лев.
Перемещаем диск с прав. стержня на лев.
Перемещаем диск с центр. стержня на прав.
Перемещаем диск с лев. стержня на центр.
Перемещаем диск с лев. стержня на прав.
Перемещаем диск с центр. стержня на прав.

Yes
22
Более сложная задача: Фермер (вол-коза-капуста)
Условия: Действующие лица:
фермер ( Farmer ),
волк ( Wolf ),
козел ( Goat )
капуста ( Cabbidge )
	находятся на одном (правом) берегу
У берега находится лодка, в которую могут поместиться только двое.
Нельзя оставлять на одном берегу козу и капусту, козу и волка.
Задание: Надо перебраться на другой (левый) берег на лодке.

23
Решение задачи: описание условий
% противоположные берега
opposite('ПРАВ.', 'ЛЕВ.').
opposite('ЛЕВ.',  'ПРАВ.').

% возможные перемещения
move(state(X,X,G,C), state(Y,Y,G,C)):- opposite(X,Y). /* фермер с волком */
move(state(X,W,X,C), state(Y,W,Y,C)):- opposite(X,Y). /* фермер с козой */
move(state(X,W,G,X), state(Y,W,G,Y)):- opposite(X,Y). /* фермер с капустой */
move(state(X,W,G,C), state(Y,W,G,C)):- opposite(X,Y). /* фермер один */

% недопустимые состояния
unsafe( state(F,X,X,_) ):- opposite(F,X).   % волк съест козу
unsafe( state(F,_,X,X) ):- opposite(F,X).   % коза съест капусту

24
Поиск путей решения
path(S,G,L,L1):-
     move(S,S1),
     not( unsafe(S1) ),
     not( member(S1,L) ),
     path( S1,G,[S1|L],L1),!.

path(G,G,T,T):- !.   % найдено финальное состояние

% Для вызова решения можно использовать:

go:- go(state('ПРАВ.','ПРАВ.','ПРАВ.','ПРАВ.'), state('ЛЕВ.','ЛЕВ.','ЛЕВ.','ЛЕВ.')).

go(S,G):-
    path(S,G,[S],L),
    nl,write('Порядок перемещений (решение):'), nl,
    write_path(L),
    fail.
go(_,_).

25
Для организации удобной формы вывода…
member(X,[X|_]).
member(X,[_|L]):- member(X,L).

write_move( state(X,W,G,C), state(Y,W,G,C) ) :-!,
       write('Фермер переплывает реку с '),
       write(X), write(' реки на '), write(Y), nl.
write_move( state(X,X,G,C), state(Y,Y,G,C) ) :-!,
       write('Фермер перевозит волка с '),
       write(X), write(' берега реки на '), write(Y), nl.
write_move( state(X,W,X,C), state(Y,W,Y,C) ) :-!,
       write('Фермер перевозит козу с ' ),
       write(X), write(' берега реки на '), write(Y), nl.
write_move( state(X,W,G,X), state(Y,W,G,Y) ) :-!,
       write('Фермер перевозит капусту с '),
       write(X), write(' берега реки на '), write(Y), nl.

write_path( [H1,H2|T] ) :- !,
       write_move(H1,H2),write_path([H2|T]).

write_path( _ ).

26
Получаем готовое решение
?- go.
Порядок перемещений (решение):
Фермер перевозит козу с ЛЕВ. берега реки на ПРАВ.
Фермер переплывает реку с ПРАВ. реки на ЛЕВ.
Фермер перевозит капусту с ЛЕВ. берега реки на ПРАВ.
Фермер перевозит козу с ПРАВ. берега реки на ЛЕВ.
Фермер перевозит волка с ЛЕВ. берега реки на ПРАВ.
Фермер переплывает реку с ПРАВ. реки на ЛЕВ.
Фермер перевозит козу с ЛЕВ. берега реки на ПРАВ.
Yes
27
Еще одна головоломка…
Побег от Зурга
Персонажи фильма «История игрушек»: Базз, Вуди, Рекс и Хэмм - убегают от Зурга.
Им осталось только перейти через последний мост, и они будут свободны.
Однако, мост очень ветхий и сможет одновременно выдержать только двоих из них.
Также, что бы перейти мост и не попасть в ловушки и ямы в нём, нужен фонарик.
Проблема в том, что у наших четырёх друзей всего один фонарик и заряда батареи
в нём осталось всего лишь на 60 (шестьдесят) минут.
Игрушки могут перейти мост в одну сторону за различное время:

Игрушка      Время
Базз       	 5 минут
Вуди       	 10 минут
Рекс       	 20 минут
Хэмм       	 25 минут

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

Вопрос: в каком порядке эти четыре игрушки должны пересечь мост за
время не более 60 минут, что бы спастись от Зурга?

28
Решение задачи «Побег от Зурга»
% факты: время прохождения моста каждым героем
time(buzz,  5).
time(woody,10).
time(rex,  20).
time(hamm, 25).

% список действующих персонажей
toys([buzz,hamm,rex,woody]).

cost([],0) :- !.% цена перехода моста равно 0, если все перешли
cost([X|L],C) :- % иначе равна времени самого медлительного
     time(X,S),
     cost(L,D),
     C is max(S,D).

% вспомогательный предикат: вычисляется каждая допустимая группа
% игрушек, двигающаяся направо (выдает списки длины 2)
split(L,[X,Y],M) :-
     member(X,L),	% если X есть в L
     member(Y,L),	% и Y есть в L
     compare(<,X,Y),	% и X<Y (встроенный предикат сравнения)
     subtract(L,[X,Y],M). % удаляем все X и Y из L, рез-т – в М

29
Продолжение решения: определяем допустимые переходы
/* Идея – в представлении промежуточных состояний переходов через мост фактами вида st(P,L), где L - список игрушек, находящихся в данный момент на левой стороне моста, а P - признак, показывающий положение фонарика (левая или правая сторона) */
move(st(l,L1),st(r,L2),r(M),D) :-
     split(L1,M,L2), cost(M,D).

move(st(r,L1),st(l,L2),l(X),D) :-
     toys(T),
     subtract(T,L1,R),
     member(X,R),
     merge_set([X],L1,L2),
     time(X,D).
% trans/4 в основном генерирует все возможные переходы через мост вместе с требуемым временем
trans(st(r,[]),st(r,[]),[],0).
trans(S,U,L,D) :-
     move(S,T,M,X),
     trans(T,U,N,Y),
     append([M],N,L),
     D is X + Y.
30
Поиск решений
% cross/2 формулирует поисковую задачу,
% задавая начальную и конечную конфигурации пространства поиска.
cross(M,D) :-
     toys(T),
     trans(st(l,T),st(r,[]),M,D0),
     D0=<D.

solution(M) :- cross(M,60).
% конец программы

Запуск поиска решения:

?- solution(M).

M = [
r([buzz, woody]), l(buzz), r([hamm, rex]), l(woody), r([buzz, woody])
] ;

M = [
r([buzz, woody]), l(woody), r([hamm, rex]), l(buzz), r([buzz, woody])
] ;

No

31
Задача о ферзях
Задача о расстановке на шахматной доске ферзей таким образом, чтобы ни один из ферзей не находился под боем другого.

Для того, чтобы задача была решена, требуется расставить ферзей таким образом, чтобы все ферзи занимали разные горизонтали, разные вертикали и разные диагонали. Результат можно представить в виде списка, где каждый элемент списка - это координаты одного из ферзей. Заранее можно ограничить перебор, расставив ферзей по разным горизонталям.

Решить поставленную задачу можно следующим образом:
   1. если список ферзей пуст, то это одно из решений задачи;
   2. если список ферзей не пуст, то он будет являться решением в случае, если ферзи в хвосте списка не будут бить друг друга, то есть хвост списка сам будет решением, и ферзь, находящийся в голове списка, не будет бить ни одного ферзя из хвоста списка.

32
Решение задачи о ферзях
solution ([ ]).
solution ([queen (X,Y)|Rest]):-
  solution (Rest),
  belongs (Y, [1,2,3,4,5,6,7,8]),
  notbeat (queen (X,Y),Rest).

notbeat (_,[ ]):- !.
notbeat (queen (X,Y), [queen (X1,Y1)|Rest]):-
  Y<>Y1,
  TmpY1=Y1-Y,
  TmpX1=X1-X,
  TmpY1<>TmpX1,
  TmpX=X-X1,
  TmpY1<>TmpX,
  notbeat (queen (X,Y),Rest).

belongs (X, [X|L]).
belongs (X, [Y|L]):- belongs (X,L).

templ ([queen (1,Y1),queen (2,Y2),queen (3,Y3),queen (4,Y4),queen (5,Y5),queen (6,Y6),queen (7,Y7),queen (8,Y8)]).

start:- templ (S), write(S), solution(S), write(S), nl, fail.

33
Полученные решения
[queen (1,4), queen (2,2), queen (3,7), queen (4,3), queen (5,6), queen (6,8), queen (7,5), queen (8,1)]
[queen (1,5), queen (2,2), queen (3,4), queen (4,7), queen (5,3), queen (6,8), queen (7,6), queen (8,1)]
[queen (1,3), queen (2,5), queen (3,2), queen (4,8), queen (5,6), queen (6,4), queen (7,7), queen (8,1)]
[queen (1,3), queen (2,6), queen (3,4), queen (4,2), queen (5,8), queen (6,5), queen (7,7), queen (8,1)]
[queen (1,5), queen (2,7), queen (3,1), queen (4,3), queen (5,8), queen (6,6), queen (7,4), queen (8,2)]
[queen (1,4), queen (2,6), queen (3,8), queen (4,3), queen (5,1), queen (6,7), queen (7,5), queen (8,2)]
[queen (1,3), queen (2,6), queen (3,8), queen (4,1), queen (5,4), queen (6,7), queen (7,5), queen (8,2)]
[queen (1,5), queen (2,3), queen (3,8), queen (4,4), queen (5,7), queen (6,1), queen (7,6), queen (8,2)]
[queen (1,5), queen (2,7), queen (3,4), queen (4,1), queen (5,3), queen (6,8), queen (7,6), queen (8,2)] …
34
Выводы
Пространство состояний - это направленный граф, вершины которого соответствуют проблемным ситуациям, а дуги - возможным ходам. Конкретная задача определяется стартовой вершиной и целевым условием. Решению задачи соответствует путь в графе. Таким образом, решение задачи сводится к поиску пути в графе.
Оптимизационные задачи моделируются приписыванием каждой дуге пространства состояний некоторой стоимости.
Имеются две основных стратегии поиска в пространстве состояний - поиск в глубину и поиск в ширину.
Поиск в глубину программируется наиболее легко, однако подвержен зацикливаниям. Существуют два простых метода предотвращения зацикливания: ограничить глубину поиска и не допускать дублирования вершин.
Реализация поиска в ширину более сложна, поскольку требуется сохранять множество кандидатов. Это множество может быть с легкостью представлено списком списков, но более экономное представление - в виде дерева.
Поиск в ширину всегда первым обнаруживает самое короткое решение, что не верно в отношении стратегии поиска в глубину.
35


title: Скачать презентацию или конспект Виды антивирусов

extracted_text:
Виды антивирусов
Компью́терный ви́рус — компьютерная программа или вредоносный код, отличительным признаком которых является способность к размножению.
Для обнаружения, удаления и защиты от компьютерных вирусов разработано несколько видов специальных программ, которые позволяют обнаруживать и уничтожать вирусы. Такие программы называются антивирусными.
Виды антивирусных программ
— программы-детекторы;
— программы-доктора, или фаги;
— программы-ревизоры;
— программы-фильтры;
— программы-вакцины, или иммунизаторы.

Программы-детекторы
осуществляют поиск характерной для конкретного вируса сигнатуры в оперативной памяти и в файлах и при обнаружении выдают соответствующее сообщение. Недостатком таких антивирусных программ является то, что они могут находить только те вирусы, которые известны разработчикам таких программ.
быстро устаревают и требуют обновления антивирусных баз.
Программы-доктора
не только находят зараженные вирусами файлы, но и «лечат» их, т. е. удаляют из файла тело программы-вируса, возвращая файлы в исходное состояние. В начале своей работы фаги ищут вирусы в оперативной памяти, уничтожая их, и только затем переходят к «лечению» файлов. Среди фагов выделяют полифаги, т. е. программы-доктора, предназначенные для поиска н уничтожения большого количества вирусов.
Dr.Web
Программы-ревизоры
относятся к самым надежным средствам защиты от вирусов. Ревизоры запоминают исходное состояние программ, каталогов и системных областей диска тогда, когда компьютер не заражен вирусом, а затем периодически или по желанию пользователя сравнивают текущее состояние с исходным.
Программы-ревизоры имеют достаточно развитые алгоритмы, обнаруживают стелс-вирусы и могут даже отличить изменения версии проверяемой программы от изменений, внесенных вирусом
Программы-фильтры
«сторожа» представляют собой небольшие резидентные программы, предназначенные для обнаружения подозрительных действий при работе компьютера, характерных для вирусов.
При попытке какой-либо программы произвести указанные действия «сторож» посылает пользователю сообщение и предлагает запретить или разрешить соответствующее действие. Программы-фильтры весьма полезны. так как способны обнаружить вирус на самой ранней стадии его существования, до размножения. Однако они не «лечат» файлы и диски.
Вакцины или иммунизаторы
это резидентные программы. предотвращающие заражение файлов. Вакцины применяют, если отсутствуют программы-доктора, «лечащие» этот вирус.
Пути "заражения" компьютерным вирусом.
1. Глобальные сети - электронная почта. Основным источником вирусов на сегодняшний день является глобальная сеть Internet. Наибольшее число заражений вирусом происходит при обмене письмами в форматах Word/Office97.
2. Электронные конференции, файл-серверы ftp. Файл-серверы "общего пользования" и электронные конференции также служат одним из основных источников распространения вирусов.
3. Локальные сети. Если не принимать необходимых мер защиты, то зараженная рабочая станция при входе в сеть заражает один или несколько служебных файлов на сервере..
4. Пиратское программное обеспечение. Нелегальные копии программного обеспечения являются одной из основных "зон риска".
5. Персональные компьютеры "общего пользования".
6. Ремонтные службы. Достаточно редко, но до сих пор вполне реально заражение компьютера вирусом при его ремонте или профилактическом осмотре.
Антивирусные программы
ADINF
AIDSTEST
DrWeb
KASPERSKY
Спасибо за внимание!
Выполнили ученицы 10 класса
МБОУ «СОШ №21» НМР РТ
Китызина К., Малкова В.


title: Скачать презентацию или конспект Графические редакторы

extracted_text:
Графические
редакторы
Асаянова О.Ю., учитель информатики  ГОУ СОШ №1389 г.Москвы
Графический редактор- программное средство для создания,  редактирования графических объектов (образов, рисунков,картин) и документов                 с графическими объектами.
Растровые
Векторные

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

Векторный редактор не способен передавать плавные переходы цветов, изображения не реалистичны;

Любая линия в векторном редакторе рисуется на основании координат начальной и конечной точек;

Векторный редактор
Векторный редактор
DVG Viewer
Векторный редактор
Векторные редакторы
Gimp
Векторный редактор
Векторный редактор
MacDraft
Векторный редактор
Interiors
Векторный редактор
MacDraft P.E.
Векторный редактор
Векторный редактор

В растровом редакторе изображение строится из точек, окрашенных в разные цвета;

растровые графические редакторы используют, когда надо обрабатывать сканированные изображения - картины, рисунки, фотографии, введенные в компьютер изображения, сделанные электронным фотоаппаратом;

Растровый редактор
в растровых графических редакторах основной упор делается на ретуширование сканированных изображений, преобразование цветов и оттенков, контраста, яркости, четкости, на разного рода размывки и затуманивания, игры со светотенью.
Растровый редактор
Растровый редактор
Растровый редактор
Paint.NET — бесплатный растровый графический редактор рисунков и фотографий для Windows, разработанный на платформе .NET Framework. Paint.NET является отличной заменой редактору графических изображений, входящему в состав стандартных программ операционных систем Windows.
Растровый редактор
Растровый редактор
Растровый редактор
Растровый редактор
Растровый редактор
Растровый редактор   PhotoFix
Панели инструментов
Редактор “AppleWorks”
Редактор “Word”
Редактор «ПервоЛого»

Редактор “Adobe Photoshop”
Растровые и векторные редакторы
Растровые и векторные редакторы стремятся сблизиться друг с другом по широте охвата и мощности своих средств. Photoshop сейчас не является чисто растровым редактором, a CorelDRAW имеет довольно развитые средства работы с растровой графикой.
В настоящее время документ, создаваемый в мощном графическом редакторе, обычно является комбинированным, состоящим из множества объектов, различающихся способами описания (например, растровые и векторные изображения, текстовые поля).
Продолжите фразу, назвав графический редактор:
Векторным графическим редактором для дизайна является __________;
Векторным графическим редактором для технического черчения _______;
Векторным графическим редактором для строительного черчения _______;
Векторным графическим редактором для 3D моделирования и анимации ________;

Растровым графическим редактором для обработки художественных фотографий ____________;
Растровым графическим редактором для обработки обычных фотографий _____________.
Ответы:
Векторным графическим редактором для дизайна является Corel Draw;
Векторным графическим редактором для технического черчения является AutoCAD;
Векторным графическим редактором для строительного черчения является ArchiCAD;
Векторным графическим редактором для 3D моделирования и анимации 3D Studio Max;
Растровым графическим редактором для обработки художественных фотографий является Adobe Photoshop;
Растровым графическим редактором для обработки обычных фотографий является Adobe Photodeluxe.
Использованные материалы взяты:
А.Х.Шелепаева, ПОурочные разработки по информатике: 8-9 классы.-2-е изд., -М.:ВАКО,2006.
www. tsv-22.narod.ru/1pc/ref/.../r01_26.html -
http://blog.shaihalov.ru/category/vector/
www.tutes.ru/o_grafike.html
http://www.flashmaste.ru/index.php/publish/87-vecnorastr
http://iartz.ru/2007/09/29/chto-takoe-bitovaja-pikselnaja.html
www.flashmaste.ru/index.php/.../87-vecnorastr


title: Скачать презентацию или конспект В мире кодов

extracted_text:
1
В мире кодов
2
Передаваемая информация может поступать от источника к приемнику с помощью условных знаков или сигналов, то есть в закодированном виде.
Необходимо заранее договариваться, как понимать те или иные сигналы, т.е. требуется разработка кода.
Код – это система условных знаков для представления информации.

Кодирование – это формирование представления информации с помощью некоторого кода.
3
Наскальные рисунки древних людей

4
Язык жестов

Когда мы здороваемся, то пожимаем друг другу руки.

Одобрение или неодобрение

Поднятая вверх рука – просьба человека обратить на него внимание, ответить на вопрос.
5
Другие примеры:
1. Дорожные знаки
2.Свой код из шести цифр –
почтовый индекс – имеет
каждый населенный пункт.
6
3. Код используется для оценки знаний в школе
Число «5» - код отличных знаний;
«4» - код хороших знаний,
«3» - удовлетворительных,
«2» - плохих.
7
4. С помощью нотных знаков записывается – кодируется любое музыкальное произведение.

5. Телефонный звонок означает, что кому-то нужно с вами поговорить.
8
В середине XIX века французский педагог Луи Брайль придумал специальный способ представления информации, или код для слепых.
Буквы этого кода выдавливаются на листе плотной бумаги.Одна буква занимает два столбика, в каждой из которых могут быть выдавлены три точки. Проводя пальцами по  образовавшимся от уколов выступам, люди различают буквы и могут читать.
А

Б
9
В памяти компьютера информация представлена в двоичном коде в виде цепочек нулей и единиц.
Так, каждому символу, вводимому с клавиатуры, соответствует уникальная цепочка из восьми 0 и 1.
Пример №1:
«7» - 00110111
Пример №2:
Слово «луна» -
11001011
11010011
11001101
11000000
10
11
Простейшую кодовую таблицу можно составить, если поставить в соответствие каждой букве алфавита её порядковый номер:

Тогда скороговорка
ОТ ТОПОТА КОПЫТ ПЫЛЬ ПО ПОЛЮ ЛЕТИТ
в закодированном виде будет выглядеть так:
16 20    20 16 17 16 20 1     12 16 17 29 20      17 29 13 30
17 16     17 16 13 32       13 6 20 10 20

12
Можно закодировать информацию, заменяя каждую букву исходного текста, например, следующей после нее буквой в алфавите. Такой код называют шифром замены.

В этом случае исходное сообщение:
АЛ ЦВЕТ МИЛ НА ВЕСЬ СВЕТ
примет вид:
БМ ЧГЁУ НКМ ОБ ГЁТЭ ТГЁУ
13

Сэмюэль Морз , 19 век
Длинный сигнал (тире)
Короткий сигнал (точка)
Отсутствие сигнала (пауза)

14
15

Ребусы

Винчестер
Включение
Компьютер
Дедукция
16
Задание:
Закодируйте свое имя в
двоичном коде,
алфавитном коде,
кодом замены и с
 помощью азбуки Морзе.
17
Формы представления информации

Выбор способа кодирования зависит от цели, ради которой оно осуществляется.
Существует три основных способа кодирования информации:
графический;
числовой;
символьный
Чтобы декодировать закодированное сообщение, необходимо знать код.

18
Рисунки, схемы, чертежи, графики – графические формы представления информации.
Метод координат – это один из удобных способов представления графической информации с помощью чисел.

19
Метод координат используется в игре «Морской бой».
Вот ее правила:

В игре участвуют двое. Каждый игрок на листе бумаги в клетку чертит два квадрата размером 10Х10 клеток. Слева клетки квадратов помечаются цифрами, снизу – буквами.

В одном из квадратов каждый игрок размещает в тайне от противника, свои корабли: 1 четырехпалубный, 2 трехпалубных, 3 двухпалубных и 4 однопалубных. Корабли не должны соприкасаться ни по стороне, ни по углу. Другой квадрат остается чистым для кораблей противника, местонахождение которых нужно угадать.
Подготовив листы, игроки начинают активно обмениваться «залпами»: Б1, А4 и т.д.
20
Задания для самостоятельной работы:
№1. Мальчик заменил каждую букву своего имени ее номером в алфавите. Получилось 18 21 19 13 1 15. Как зовут мальчика?
№2. Зная, что каждая буква исходного текста заменяется третьей после нее буквой в алфавите русского языка, который считается записанным по кругу, декодируйте следующие сообщения:
А) жуцёг льл, г ргмжиыя – дзузёл;
Б) фхгуюм жуцё оцъыз рсеюш жецш.
21
№3. На координатной плоскости отметьте и пронумеруйте точки со следующими координатами:
1(2,6), 2(6,6), 3(11,7), 4(11,4), 5(6,2), 7(4,9), 8(9,9), 9(3,2),
10 (3,4), 11(5,4), 12(5,2).
Соедините точки: 1-2-3-4-5-6-1-7-8-3.
                                7-2-5.
                                 9-10-11-12.
После проверки правильности выполнения задания можно раскрасить полученную картинку цветными карандашами.
22
№4. Известны координаты пятнадцати точек:
1(4,1), 2(4,2), 3(1,2), 4(4,5), 6(4,7), 7(3,7), 8(5,9), 9(7,7), 10 (6,7), 11(8,5), 12(6,5), 13(9,2), 14(6,2), 15(6,1).
Отметьте эти точки на координатной плоскости, за затем соедините их отрезками в последовательности:
1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-1.
Что получится?


title: Скачать презентацию или конспект Моделирование, как метод познания

extracted_text:
Тема урока: «Моделирование, как метод познания»
Автор: Кондратенко Наталья Дмитриевна
Место работы: МОУ СОШ № 19 г. Славянска-на-Кубани Краснодарского края
Должность: учитель математики и информатики
Цель урока:
Сформировать представление о модели и моделировании.
Научиться создавать и исследовать информационные модели.
Гибель корабля
В 1870 г. английское Адмиралтейство спустило на воду новый броненосец “Кэптен”. Корабль вышел в море и перевернулся. Погиб корабль. Погибли 523 человека.
Это было совершенно неожиданно для всех. Для всех, кроме одного человека. Им был английский ученый-кораблестроитель В.Рид, который предварительно провел исследования на модели броненосца и установил, что корабль опрокинется даже при небольшом волнении. Но ученому, проделывающему какие-то несерьезные опыты с “игрушкой”, не поверили. И случилось непоправимое...

С понятием «модель» мы сталкиваемся с детства
Игрушечный автомобиль, самолет или кораблик для многих были любимыми игрушками равно как и плюшевый медвежонок или кукла. Дети часто моделируют (играют в кубики, обыкновенная палка им заменяет коня и т.д.).

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

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

E =MC2
Навыки моделирования очень важны человеку в жизни.
Они помогут разумно планировать свой распорядок дня, учебу, труд, выбирать оптимальные варианты при наличии выбора, разрешать удачно различные жизненные ситуации.

Примеры моделей
Архитектор готовится построить здание невиданного доселе типа. Но прежде чем воздвигнуть его, он сооружает это здание из кубиков на столе, чтобы посмотреть, как оно будет выглядеть. Это модель.

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

Примеры моделей
На стене висит картина, изображающая яблоневый сад в цвету. Это модель.

Примеры моделей
Роль моделей
Модель – это такой материальный или мысленно представляемый объект, который в процессе изучения замещает объект-оригинал, сохраняя некоторые важные для данного исследования типичные его черты
Процесс построения модели называется моделированием
Два игрока играют в «Верёвку». Игроки ходят по очереди. В начале игры верёвка имеет длину 18 см. Ход состоит в том, что игрок отрезает от веревки кусок длиной 4 см или 5 см. Выигрывает тот игрок, на чьём ходе закончится верёвка (последний выигрышный ход может быть <4). Кто выиграет при безошибочной игре двух игроков – игрок, делающий первый ход, или игрок, делающий второй ход?. Ответ обоснуйте.
ВЫВОД:
При любом ходе первого игрока у второго имеется ход, приводящий к победе

Два игрока играют в «Верёвку». Игроки ходят по очереди. В начале игры верёвка имеет длину 18 см. Ход состоит в том, что игрок отрезает от веревки кусок длиной 4 см или 5 см. Выигрывает тот игрок, на чьём ходе закончится верёвка (последний выигрышный ход может быть <4). Кто выиграет при безошибочной игре двух игроков – игрок, делающий первый ход, или игрок, делающий второй ход?. Ответ обоснуйте.
ВЫВОД:
При любом ходе первого игрока у второго имеется ход, приводящий к победе


title: Скачать презентацию или конспект Опасности е в сети Интернет

extracted_text:
Презентация подготовлена для конкурса"Интернешка"
http://interneshka.org/
Опасности, подстерегающие  в сети Интернет
Проблема
Россия входит в зону повышенного риска по проблеме безопасности детей и подростков в глобальной сети. Это обуславливается высокой пользовательской интернет-активностью российских школьников, снижением возрастного ценза пользования сетью, расширением диапазона информационной и коммуникационной деятельности в Интернете
Диаграмма "Что сообщают о себе школьники в профиле социальной сети"
Школьники заходят в социальные сети, скачивают музыку и фильмы, выкладывают в сети фото, музыку, видео, посещают чаты, создают персонажи, животных, аватары, пользуются файлообменниками
Буллинг как важная проблема общения в сети
Исследования буллинга во многих странах начались еще в 70-е гг. ХХ в. И актуальность этой темы не ослабевает. Под буллингом обычно понимается неоднократное умышленное агрессивное поведение, как физическое, так и вербальное, направленное против кого-то, кто по каким-либо причинам считается слабее, с целью унижения его достоинства.
Диаграмма "Как часто дети сталкиваются с буллингом?"
Исследование показывает, что в среднем по России 23% детей, которые пользуются Интернетом, являются жертвой буллинга онлайн или оффлайн. В Санкт-Петербурге эта цифра достигает 35%.Пятая часть российских детей – жертв буллинга – подвергается обидам и унижениям либо каждый день, либо 1–2 раза в неделю.
 "В каких ситуациях дети подвергаются буллингу?"
Половина российских детей постоянно знакомится в Интернете с новыми людьми, а 40% детей признаются, что встречались с интернет-знакомыми в реальной жизни.Треть российских детей 11–12-ти лет поддерживает контакты в сети с незнакомцами. Среди 15–16-летних таких уже больше половины.
Служба консультирования по проблемам безопасного использования Интернета
Линия помощи "Дети онлайн" – служба телефонного и онлайн-консультирования по проблемам безопасного использования Интернета и мобильной связи для детей, подростков, родителей и работников образовательных и воспитательных учреждений.Задачи проекта: психологическая помощь детям и подросткам, столкнувшимся с опасностью во время пользования Интернетом и/или мобильной связью; информационная и консультационная поддержка детей, подростков по проблемам безопасного использования Интернета и мобильной связи детьми.
Проблемы и опасности, с которыми дети чаще всего сталкиваются в сети
Контентные риски: материалы содержащие насилие, агрессию, эротику и порнографию, нецензурную лексику, информацию, разжигающую расовую ненависть, пропаганду анорексии и булимии, суицида, наркотических веществ и т. д.Электронные (кибер) риски: кибердеятельность, которая может включать в себя хищение персональной информации пользователя, вирусные атаки, онлайн-мошенничество, спам.Коммуникационные риски: кибердеятельность, связанная с межличностными отношениями интернет-пользователей. Для подобных целей используются различные чаты, социальные сети и т. д.
Темы сообщений, поступивших на линию помощи
Наибольшее количество обращений от детей и подростков по вопросам коммуникационных рисков связано с кибербуллингом (52%).Большое количество звонков поступает от родителей с рассказами о переписке незнакомых взрослых людей с их несовершеннолетними детьми (18%).
Куда обращаться за помощью
О факте противоправного воздействия в сети Интернет несовершеннолетнему ребенку необходимо уведомить родителей, после чего вместе с ними составить заявление в местное отделение полиции и (или) в прокуратуру.


title: Скачать презентацию или конспект История языков программирования

extracted_text:
История языков программирования
Язык программирования – это система команд, понятных ЭВМ.
машинно-ориентированные языки (языки низкого уровня): Автокоды, Ассемблеры – позволяют управлять вычислительным процессом напрямую, при помощи машинных команд
языки программирования высокого уровня
Классы языков высокого уровня
Процедурные
Логические
Объектно-ориетированные
Классы языков высокого уровня
Классы языков высокого уровня
Классы языков высокого уровня
Язык Бейсик
Язык Бейсик был создан в 1964 году Томасом Куртом и Джоном Кемени как язык для начинающих, облегчающий написание простых программ. Существует много различных версий Бейсика Это язык очень широко распространен на микрокомпьютерах. На IBM PC широко используются Quick Basic и Visual Basic фирмы Мicrosoft и Turbo Basic фирмы Borland.
Основная идея авторов языка Бейсик - снабдить простым языком программирования непрофиссиональных программистов - оказалась очень привлекательной для большого числа разработчиков различных фирм.

Язык Бейсик
В феврале 1975 года на рынке программмных средств появилась первая версия языка Бейсик для персональных компьютеров, авторами которой были Билл Гейтс и Пол Аллен, сотрудники корпорации Microsoft - ведущего лидера поставщиков программного обеспечения.
Именно этот год стал, по существу, годом, когда Basic вышел в свет. Сочетая в себе простоту, гибкость и универсальность, этот язык стал прообразом многих других языков программирования.
Язык Си
Язык Си был изобретен в 1972 году Денисом Ричи и Кеном Томпсоном для использования в написании весьма ныне популярной операционной системы Unix.
Си соединяет свойства языка высокого уровня с возможностью эффективного использования ресурсов компьютера, которое обычно обеспечивается только при программировании на языке Ассемблера.
Си не очень прост в обучении и требует тщательности в программировании, но позволяет писать сложные и весьма высокоэффективные программы.
Бьярном Страустрапом был разработан язык Си++ - расширение языка Си, реализующее популярные в последнее время концепции объектно-ориентированного программирования и облегчающее создание сложных программ.
Язык Паскаль
Язык Паскаль был разработан в 1970 году Никлаусом Виртом как язык для обучения студентов программированию.
Паскаль позволяет писать программы, легко читаемые даже новичком, и содержит в себе все элементы, необходимые для соблюдения хорошего строгого стиля программирования (называемого структурным программированием), упрощающего разработку сложных программ.
Системы программирования на Паскале для IBM PC также реализуют расширенные варианты этого языка.
Из этих реализаций наиболее популярны - Turbo Pascal, Borland Pascal и Borland Pascal for Windows
История языков программирования
http://files.school-collection.edu.ru/dlrstore/a94e62b7-2c30-42da-ac3b-e67a2c228581/9_151.swf


title: Скачать презентацию или конспект Microsoft Office - интегрированный пакет

extracted_text:
Microsoft Office -
интегрированный
пакет
Интегрированные пакеты -
это набор нескольких программных продуктов, функционально допол-няющих друг друга, поддерживающих единые информационные технологии, реализованные на общей вычисли-тельной и операционной платформе
Отличительные особенности
полнота информационных технологий для пользователей (много возможностей)

Ввод текста
Вставка рисунков
Вставка формул
Создание диаграмм

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

Общие команды меню
Одинаковые кнопки на панели инструментов
Отличительные особенности
общий сервис

Словарь
Средства орфографии для проверки правописания
Построитель диаграмм
Отличительные особенности
легкость обмена информацией

Технология DDE
Динамический обмен данными
Технология OLE
Динамическая компоновка и внедрение объектов
Единообразный перенос объектов
Методdrag-and-drop
Схвати и перенеси

Состав Microsoft Office
Текстовый редактор Microsoft Word
Мастер презентаций Microsoft Power Point
Табличный процессор Microsoft Excel
Система управления базами данных (СУБД) Microsoft Access
Программа для работы с электронной почтой Microsoft Outlook
 Программа для создания публикаций Microsoft Publisher

Состав Microsoft Office
набор прикладных программ:
Graph – создание диаграмм, графиков
Organization Short – построение организационных диаграмм (схем)
Equation Editor – редактор формул
WordArt – фигурный текст
ClipArt Gallery – галерея рисунков и иллюстраций
Picture Manager – просмотр фотографий
Document Scanning – сканирование изображений
и др.

Версии пакета Microsoft Office
Microsoft Office 6.0
Microsoft Office-97
Microsoft Office 2000
Microsoft Office XP
Microsoft Office 2003
Microsoft Office 2007
Ответь на вопросы
Для чего предназначены программы?
Microsoft Word
Microsoft Power Point
Microsoft Excel
Microsoft Access
Microsoft Outlook
Microsoft Publisher

Текстовый редактор
Мастер презентаций
Табличный процессор
Система управления базами данных
Программа для работы с электронной почтой
Программа для создания публикация
Ответь на вопросы
Что такое интегрированный пакет?

это набор нескольких программных продуктов, функционально дополняющих друг друга, поддерживающих единые инфор-мационные технологии, реализованные на общей вычислительной и операционной платформе

Ответь на вопросы
Какие дополнительные программы входят в состав пакета Microsoft Office?

Document Scanning
Фигурный текст
Graph
Organization Short
Equation Editor
WordArt
ClipArt Gallery
Picture Manager


title: Скачать презентацию или конспект Редактор компьютерной графики Adobe Photoshop CS6

extracted_text:
Цель курсовой работы:
выявить  эффективные методы ретуши и исправления     изображений средствами редактора растровой графики Adobe Photoshop CS6.
Задачи исследования:
 1. Изучить и проанализировать специальную и научно-исследовательскую литературу по теме исследования.

2. Дать  теоретическое обоснование  основ работы с редактором компьютерной графики Adobe Photoshop CS6.

3. Рассмотреть особенности  ретуширования  и исправления    изображений в программе Adobe Photoshop CS6.

повышение естественной интенсивности света
До
После
создание инфракрасного эффекта
До
После
манипуляции с уровнями
До
После
создание улыбки
До
После
удаление шума
До
После
создание ретро-эффекта
До
После
сепия
До
После

4. Подготовить образцы изображений, выполненных в разных методиках ретуши.

Спасибо за внимание!!!


title: Скачать презентацию или конспект Алгоритмы

extracted_text:
Аннотация
Презентация для использования на уроках информатики в 3 классе по теме «Робик. Команды для Робика» (по УМК Т.А. Рудченко, А.Л. Семенов)
Презентация с триггерами.
Навигация осуществляется посредством навигационных кнопок.
Робик. Команды для Робика

Привет, я робот Робик
Поле Робика

Границы поля
Стенки
Позиция Робика
Закрашенная клетка
Робик всегда закрашивает клетку, в которой находится!

Команды для Робика
До выполнения команды
После выполнения команды

Команды для Робика
До выполнения команды
После выполнения команды

Программа для Робика
Позиция Робика до выполнения программы
Позиция Робика после выполнения программы

Ж
вниз
вправо
вниз

Упражнение 46

Вправо

Ж
вверх
вверх
вправо
вправо
вниз
вниз

Упражнение 47

Вправо

И
влево
вправо
вправо
влево
вниз
вниз
Упражнение 48

вниз
вправо
вправо
вверх
вниз
вправо
вправо
вверх
вниз
вправо
вправо
вверх

Л

М

К
Упражнение 49

Понравилось управлять мной?
До новых встреч!
Выполни
домашнее задание:Читать стр. 30 – 31
№ 50, 51


title: Скачать презентацию или конспект Интерфейс Inkscape

extracted_text:
1
Интерфейс Inkscape
Кущ О.М учитель информатики средней школы №62 г. Ярославль
2
Рабочий экран Inkscape

Кущ О.М учитель информатики средней школы №62 г. Ярославль
3
Операции над объектами
Кущ О.М учитель информатики средней школы №62 г. Ярославль
4
Закон векторной графики
Выдели объект
и только потом выполняй над ним преобразования!!!
- инструмент выделения объектов
Кущ О.М учитель информатики средней школы №62 г. Ярославль
5
Выделение объекта
Выбрать инструмент для выделения объектов
Щелкнуть  мышью на объекте.
или (F1).

Кущ О.М учитель информатики средней школы №62 г. Ярославль
6
Перемещение объекта
Выделить объект.
Установить курсор на объекте.
Переместить мышь при нажатой кнопке.
Кущ О.М учитель информатики средней школы №62 г. Ярославль
7
Копирование объекта
Выделить объект.
Выполнить команду Правка/Скопировать (Ctrl+C).
Выполнить команду Правка/Вставить(Ctrl+V).

Кущ О.М учитель информатики средней школы №62 г. Ярославль
8
Дублирование объекта
Выделить объект.
Выполнить команду Объект/Дублировать (Ctrl+D).
Дубликат «снять с оригинала».

Кущ О.М учитель информатики средней школы №62 г. Ярославль
9
Растяжение (сжатие) объекта
Выделить объект.
Установить курсор на одном из боковых маркеров.
Перемещать мышь при нажатой кнопке.

Кущ О.М учитель информатики средней школы №62 г. Ярославль
10
Удаление объекта
Выделить объект.
Нажать клавишу Delete.

Кущ О.М учитель информатики средней школы №62 г. Ярославль
11
Вращение объекта
Дважды щелкнуть на объекте.
Установить курсор на одном из угловых маркеров.
Перемещать мышь при нажатой кнопке.

Кущ О.М учитель информатики средней школы №62 г. Ярославль
12
Наклоны объекта
Дважды щелкнуть на объекте.
Установить курсор на одном из боковых маркеров.
Перемещать мышь при нажатой кнопке.

Кущ О.М учитель информатики средней школы №62 г. Ярославль
13
Зеркальное отображение объекта
Выделить объект.
Выполнить команду:
                      Объект/Отразить горизонтально;
                      (Объект/Отразить вертикально).

Кущ О.М учитель информатики средней школы №62 г. Ярославль
14
Выровнять объекты
Выделить объекты (щелкнуть на объекте при нажатой клавише Shift).
Выполнить команду: Объект/Выровнять расставить.
В диалоговом окне указать способ выравнивания, например – по нижнему краю.

Кущ О.М учитель информатики средней школы №62 г. Ярославль
15
Расставить объекты по сетке
Выделить объекты.
Выполнить команду: Объект/Расставить по сетке.
В диалоговом окне указать число строк и столбцов.
Нажать кнопку Применить.

Кущ О.М учитель информатики средней школы №62 г. Ярославль
16
Порядок следования объектов
Выделить объект.
Выполнить команду Объект/Поднять (PgUp) или
                                       Объект/Опустить (PgDn).

Кущ О.М учитель информатики средней школы №62 г. Ярославль


title: Скачать презентацию или конспект Нанотехнологии

extracted_text:
Из опыта работы
Ермаковой Вероники Викентьевны,
учителя информатики
МОУ СОШ № 19 города Белово
Кемеровской области

Цель:
Изучение основ нанотехнологии и перспективы их развития в компьютерном мире.
Задачи:
1. Исследовать  истоки и перспективы развития нанотехнологии в компьютерном мире.
2. Изучить и продемонстрировать перепайку ИМС в домашних условиях.

С чего всё начиналось?
В начале XX века появились первые ламповые ЭВМ
Они занимали огромные площади
Потребляли огромное количество электроэнергии
И были очень сложны в обслуживании

Основной составляющей таких ЭВМ была электронная вакуумная радиолампа в количестве нескольких тысяч
У лампы был относительно не большой срок  службы от 500 до 4000 часов непрерывной работы
В 1947 г. был изобретён первый транзистор
Затем началось их массовое производство
После замены электронных радиоламп на транзисторы, ЭВМ стали потреблять значительно меньше электроэнергии, но они по-прежнему занимали большое пространство
И  у инженеров возник вопрос: «Как в минимум места вместить максимум компонентов?»
Так зародились первые интегральные микросхемы (ИМС)
ИМС состояла из множества транзисторов, расположенных на одном кристалле
Транзистор

Кристалл

Готовая ИМС
Кристалл устанавливался в корпус и припаивался тоненькими проводниками к металлическим дорожкам, которые вели к выводам ИМС
Это было начало …
1 апреля 1972 года корпорация Intel выпустила знаменитый микропроцессор «Intel 8008» для продвинутых калькуляторов, терминалов ввода-вывода и автоматов бутылочного разлива
8 июня 1978 года Intel выпустила микропроцессор «Intel 8086», на базе которого было собрано множество персональных компьютеров
Продолжать хронологию дальше не имеет смысла, микропроцессоры совершенствовались как внутренней логической схемой, так и «железной начинкой»
Стоит отметить, что сегодня в ЛЮБЫХ электронных устройствах, таких как,  мобильный телефон, телевизор, игровой автомат и даже в простейшем брелоке, который светится разными цветами или поёт, есть микропроцессор или микроконтроллёр
Что такое «нано»?
 1 нанометр (нм) - это одна миллиардная доля метра, или одна миллионная доля миллиметра
На данной кремниевой пластине расположены 310 кристаллов современных процессоров, площадь каждого около 1,5см2
1 кристалл – 1 процессор
1 процессор – около 100 миллионов транзисторов
Итого на этой пластине, общей площадью 465см2 уместился 31 миллиард транзисторов

Внутри ИМС имеют подобную структуру
На рисунке изображено всего 6 транзисторов, над которыми в несколько «этажей» расположены металлические проводники
Именно поэтому пластины с готовыми кристаллами так красиво переливаются цветами радуги
Нанотехнологии это не только полупроводниковая индустрия
В настоящий момент ведутся разработки сверхлёгкого и при этом сверхпрочного материала
Американские ученые                                       разработали одежду,                                       позволяющую                                                        вырабатывать                                                   электрический ток.
Из чего же состоит протон?
Учёные долго спорят по этому поводу, и даже построили Большой адронный коллайдер
Он способен «увидеть» наночастицы при столкновении 2-х простейших частиц
Именно это должно дать ответ на вопрос выше

Нанотехнологии – это технологии, механизмы которые очень мелки, и невооруженным глазом их не увидеть
Без нанотехнологий дальнейшее развитие науки невозможно
Нанотехнологии – это наше настоящее и счастливое будущее

Нанотехнологии прежде всего ассоциируются с самыми передовыми заводами, в домашних условиях кристалл для процессора не вырастить
Но в домашних условиях можно провести перепайку ИМС
Это не «нано», но об этом стоит поведать
И так, перепайка…
Процесс перепайки проходит на высоких температурах и прежде всего для этого надо ограничить место пайки
Добиться высоких температур (порядка 380°) помогает специальное паяльное оборудование
Ограничение места пайки
Для этого нужен кусок фольги, острый нож и ученическая линейка
Для начала нужно замерить размеры ИМС
Потом изготовить форму ограничителя

Как говорилось выше для этого нужна специальная паяльная станция, но для прогрева больших плат её будет недостаточно, тут поможет кухонная плита, желательно стеклокерамическая
После достижения температуры плавления припоя слегка толкаем ИМС в сторону (не более 1-2мм), и если она быстро встаёт на место, то ее можно снимать
Делается это пинцетом и снимать нужно вертикально вверх
После снятия чипа мы увидим

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

Дефекты заключаются в слипшихся шариках припоя и неровностях. Эту зону надо очистить паяльником.
Восстановление шариков припоя
Для этого понадобится тонкая оловянная проволочка припоя, её необходимо разрубить на небольшие цилиндрики, подобрав  размеры
 Кладём их на чип и плавим термофеном, но при этом не даём им прилипнуть к остальным шарикам

Теперь ИМС полностью готова к дальнейшим процедурам
В зависимости от цели, ИМС можно было бы припаять на другую плату или оставить на этой
Далее процесс припаивания, аналогичен отпаиванию

 Заключение
Наука и техника не стоит на месте, одна из основных задач перед учёными - разработать искусственный интеллект, который будет помогать человечеству в повседневной жизни, для этого нужны быстродействующие вычислительные машины
По мере развития нанотехнологии, а именно уменьшению её компонентов, вычислительные машины становятся совершеннее, и как следствие этому - совершенный искусственный интеллект становится к нам ближе


title: Скачать презентацию или конспект Создание списков и колонок в Word

extracted_text:
СОЗДАНИЕ СПИСКОВ И КОЛОНОК В WORD
Создание списков
Списки создаются маркированные и нумерованные, которые в свою очередь разделяются на одноуровневые и многоуровневые.
Отступ задается фиксированным размером.
Создание маркированного списка
В меню Формат выберите команду Список, а затем выберите вкладку Маркированный.
Выбрать нужный вид списка, подтвердив его кнопкой ОК.
Для того, чтобы изменить знак и положение маркера, положение текста, отступ – необходимо нажать кнопку Изменить

Изменение знака маркера:
1. Выбрать из предложенных изображений.
2. При помощи вкладки Шрифты изменить размер, шрифт и начертание маркера.
3. При помощи вкладки Знаки ваш маркер приобретет вид любого знака или символа, который вы выберете из предложенной таблицы.
4. Закладка Рисунок сделает Ваш маркер ярким и художественным.
5. Отступы текста и маркера фиксируются определенным размером.
6. После всех настроек подтвердить свой выбор кнопкой ОК.

Создание нумерованного списка
В меню Формат выберите команду Список, а затем выберите вкладку Нумированный.
Выбрать нужный вид списка, подтвердив его кнопкой ОК.
Для дополнительного редактирования нажать кнопку Изменить.

Изменение нумерованного списка
При помощи кнопки Шрифты выбрать нужный шрифт.
Выбрать нужный вид нумерации. Установить с какой цифры вести номер список.
Установить положение номера и отступ, указав его размер.
Указать положение и отступ текста от номера, зафиксировав размер.
Подтвердить установленные параметры кнопкой ОК.
Многоуровневый список
В меню Формат выберите команду Список, а затем выберите вкладку Многоуровневый, который сочетает в себе заголовки и подзаголовки с разными уровнями отступов и обозначений.
Выбрать нужный вид списка, подтвердив его кнопкой ОК.
Для того, чтобы изменить ввод каждого уровня, положения текста, отступа – необходимо нажать кнопку Изменить

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

Выбор стилей списка
В меню Формат выберите команду Список, а затем выберите вкладку Список стилей, который предлагает набор образцов сочетаний многоуровневых списков. Выбрав один из них, автоматически устанавливаются параметры списка.
Выбрать нужный вид списка, подтвердив его кнопкой ОК.

Разделение текста на колонки
Для того, чтобы расположить текст в двух и более колонках, нужно в меню Формат выбрать команду Колонки, а затем выберите количество колонок и их расположение, число колонок указать в окошке выбора.
	Установить ширину каждой колонки и промежуток между ними. В окошке Образец показан макет создаваемого документа.
Указать применение изменений ко всему документу (если он весь печатается в заданном числе колонок) или только к выделенному тексту (частичная вставка колонок).
Подтвердить изменения кнопкой ОК


title: Скачать презентацию или конспект Звуковая плата

extracted_text:
Презентация на тему: Аппаратные средства обеспечения звуковых технологий

Аппаратное обеспечение звуковой подсистемы ПК состоит из звуковой карты ( платы) , или адаптера , устройств ввода ( микрофон, магнитофон и др.) и устройств вывода звукового сигнала ( звуковые колонки или наушники).
Звуковая карта -
Основное устройство для работы со звуком.
На большинстве имеется: 2 входа (для микрофона и др. устройства), 1 – 2 выхода (для наушников и колонок), игровой порт (для джойстика)
Элементы звуковой карты :
Цифро – аналоговый и аналогово – цифровой преобразователь (ЦАП/АЦП)
Синтезатор
Микросхема, отвечающая за обработку «сжатого звука»
Чип объемного 3-D звучания
Модуль спецэффектов
Основные форматы компьютерного звука:

Цифровой (WAV) – точная цифровая копия музыки или др. звука.
Синтезированный (MIDI) -собираемый из звуков, сыгранных на определенном инструменте).
Звуковая карта (характеристики):
Разрядность;
Частота дискретизации;
Количество аппаратных «голосов» - количество партий инструментов, которые может воспроизводить одновременно синтезатор карты при воспроизведении MIDI-музыки;
 Соотношение «сигнал – шум» показывает на сколько уровень помех в звуковой карте слабее собственно звукового сигнала.

Возможности звуковой карты
Звуковая карта может записывать и воспроизводить звук одновременно.
Поддержка объемного 3D-звука;
Поддержка звука АС-3 (Dolby Digital) для DVD.
Поддержка аппаратного декодирования MP3.

Наушники
устройство для персонального прослушивания звуковой информации. В комплекте с микрофоном могут служить головной гарнитурой — средством для ведения переговоров по телефону или иному средству голосовой связи. Кроме того, наушники используются в звукозаписывающих студиях для точного контроля записываемого трека музыкальной композиции.

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


title: Скачать презентацию или конспект Современные микропроцессоры

extracted_text:
Современные микропроцессоры
Технология  Hyper-Threading
    	Главная   цель     применения   Hyper-Threading  —     не   выполнение   двух (нескольких) задач одновременно,
   а максимально  возможная   загрузка процессорных ресурсов.
    	Процессоры, выполненные по технологии Hyper-Threading,  одновременно   обраба-тывают две  (несколько)   нитей  процессов,  состоящие из потоков данных и команд двух (нескольких)     разных       приложений    или различных частей одного.
Система с двумя IA-32 процессорами и ЦП, построенный по технологии Hyper-Threading
Загрузка процессоров
      Оранжевые и зеленые блоки работают, серые простаивают.
1 — выполнение 1 нити  на обычном процессоре;
2 — выполнение 2 нитей на   2   разных  процессорах стандартной 2-процессорной системой;
3 — одновременное выполне-ние 2  нитей на 1 процессоре с технологией Hyper-Threading;
4 — выполнение 4 нитей на 2 процессорах   2-процессор-ной системы с технологией Hyper-Threading.
Многоядерность
Многоядерность
Пути увеличения быстродействия:
 наращивание тактовых частот,
 увеличение числа инструкций, исполня-емых за один такт,
 уменьшение числа операций, необходи-мых для обработки одних и тех же объёмов данных (SIMD инструкции).
Performance = Frequency * IPC
Power =

Особенности Core 2 Duo
Intel Wide Dynamic Execution (14 стадий конвейера, до 4х инструкций за такт в каждом ядре)
Intel Smart Memory Access (Оптимизация доступа к памяти, в т.ч. Memory Disambiguation)
Intel Advanced Smart Cache (Общий КЭШ 2го уровня, динамически распределяемый между ядрами)
Intel Advanced Digital Media Boost (128-битный SSE, расширенный набор команд)
Intel Intelligent Power Capability
Micro-ops fusion и macrofusion
Особенности Core 2 Duo
Intel Wide Dynamic Execution —   технология выполнения большего количества  команд за  каждый  такт, повышающая эффективность выполнения приложений и сокращающая энергопотребление. Каждое ядро может выполнять до 4-х инструкций одновременно с помощью 14-стадийного конвейера.
Intel Intelligent Power Capability — технология, с помощью которой для исполнения задач активируется работа отдельных узлов чипа по мере необходимости, что значительно снижает энергопотребление системы в целом.
Intel Advanced Smart Cache — технология использования общей для всех ядер кэш-памяти 2-го уровня, что снижает  энергопотребление и повышает производительность, при этом, по мере необходимости, одно из ядер  может использовать весь
     объём кэш-памяти при динамическом отключении другого ядра.
Intel Smart Memory Access — технология оптимизации работы подсистемы памяти, сокращающая время отклика и повышающая пропускную способность подсистемы памяти.
Intel Advanced Digital Media Boost — технология обработки 128-разрядных команд SSE, SSE2 и SSE3, широко используемых в мультимедийных и графических приложениях, за один такт.
Intel Wide Dynamic Execution
Каждое ядро выбирает из  кода и исполняет до 4  x86 инструкций одновременно.
Имеет 4 декодера  (1 для сложных инструкций и 3 – для простых).
6 портов запуска  (1 – Load, 2 – Store и 3 универ-сальных).
Усовершенствованный  блок предсказания переходов.
Увеличены буферы команд, используемые на различных этапах анализа кода для оптимизации скорости исполнения,
Длина конвейера составляет 14 стадий. Процессоры с микроархитектурой Core обладают поддержкой 64-битных расширений Enhanced Memory 64 Technology (EM64T).
Intel Advanced Smart Cache
 Нет необходимости поддерживать   когерентность.
 Динамически распределяется между ядрами.
Intel Smart Memory Access
6 Блоков предвыборки (2 для КЭШа 2го уровня, по 2 для КЭШей 1го уровня).
Memory Disambiguation технология направлена на повышение эффективности работы алгоритмов внеочередного исполнения инструкций, осуществляющих чтение и запись данных в памяти. Она использует алгоритмы, позволяющие с высокой вероятностью устанавливать зависимость последовательных команд сохранения и загрузки данных, и даёт возможность, таким образом, применять внеочередное выполнение инструкций к этим командам.
Micro-ops fusion и macrofusion технологии
      Обе технологии увеличивают числа исполняемых команд  за такт.
      1. Команда  –  это   «связанные»   декодером  зависимые микро-инструкции, на которые распа-дается   x86-команда.   Это   позволяет   избежать ненужных простоев процессора, если связанные микроинструкции оказываются оторванными друг от друга в результате работы алгоритмов внеоче-редного выполнения.
      2. Команда -- связанные между собой после-довательных   x86-команд,  например, сравнение  со следующим за ним условным переходом, пред-ставляются внутри процессора одной микроинст-рукцией. Таким путём достигается как увеличение темпа исполнения кода, так и некоторая экономия энергии.
Macro-fusion технологии
Intel Advanced Digital Media Boost
      Современное  ПО  позволяет  работать   со   128-битовыми операндами  различного характера  (векто-рами и целочисленными либо вещественными данными повышенной точности).
     Этот факт заставил инженеров Intel задуматься об ускорении работы SSE блоков процессора, тем более что до настоящего  времени  процессоры Intel  испол-няли   одну  SSE-инструкцию,   работающую  с  128-битными операндами, лишь за два такта.
Один такт  тратился на обработку старших 64 бит.
Второй такт – на обработку младших 64 бит.
Микроархитектура Core позволяет ускорить работу с SSE инструкциями в два раза.
Технические характеристики Core 2 Duo
L1 DCache 32K 8-way
L1 ICache 32K 8-way
L2 Cache 4M / 2 Cores
ITLB 128 ent
DTLB 256 ent
Устройства
5 Integer 3 ALU + 2 AGU
2 Load/Store (1 Load + 1 Store)
4 FP (FADD + FMUL + FLOAD + FSTORE)
3 SSE (128 bit)

Itanium 2 (Montecito)
Niagara
Особенности Niagara
8 ядер
4 потока на ядро
Общий FPU
79 Ватт при 1.2 ГГц
26.5 ГБ/сек
Cell
Архитектура Cell
Cell
Главный процессорный элемент
Упорядоченное исполнение
Поддержка работы с двумя потоками
8 синергетических процессорных элементов
Ядро на основе 286 архитектуры
Поддержка векторных вычислений 128 бит
Отсутствие КЭШей
Локальная память 256 Кбайт с прямым доступом
Шина ввода вывода
Пропускная способность 76,8 Гбайт/с
Шина взаимосвязанных элементов
Передает 96 байт/цикл
Более 100 уникальных запросов
Power Processor Element
Два 64-битных ядра на основе архитектуры POWER
Упорядоченное исполнение комманд
Поддержка SMT (многопоточность)
КЭШ
1го уровня: 32+32 Кбайт
2го уровня: 512 Кбайт
Synergistic Processor Element
4 целочисленных векторных устройства
4 векторных устройства с плавающей запятой
128 регистров по 128 бит
256 Кбайт локальной памяти
Динамическая защита доступа к памяти
Производительность Cell(для 4GHz)
256 GFLOPS с плавающей запятой
256 GOPS целочисленная арифметика
25 GFLOPS с плавающей запятой двойной точности