Записать логическое выражение принимающее значение истина в случае когда точка с координатами (x,y) находится внутри заштрихованной области

126351
знак
17
таблиц
13
изображений

8.         Записать логическое выражение принимающее значение истина в случае когда точка с координатами (x,y) находится внутри заштрихованной области.

Структурная схема ЭВМ

 

Общая структурная схема персонального компьютера представлена на рис. 1. Для простоты на этой схеме показано лишь одно устройство ввода и одно устройство вывода. Основная память компьютера состоит из двух частей – оперативного запоминающего устройства (ОЗУ) и постоянного запоминающего устройства (ПЗУ).


Рис. 1. Общая структурная схема персонального компьютера.

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

Микропроцессор – сложное цифровое электронное устройство. К основным элементам, влияющим на временные характеристики выполнения программ, относятся: форматы и системы команд микропроцессора; длительность выполнения разных команд; имена (или номера) программно-доступных регистров (так называются регистры, которые могут использоваться в составляемых программах); длина разрядной сетки (разрядность); правила адресации внешних устройств и особенности выполнения операций ввода-вывода; размер адресного пространства; схема обработки прерываний.

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

 


Рис. 2. Микропроцессор и его связи с основной памятью.

В состав микропроцессора входят: устройство управления (УУ), арифметическо-логическое устройство (АЛУ) и набор регистров.

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

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

Число выходов УУ, по которым выдаются управляющие сигналы, обычно довольно велико. Например, УУ, показанное на рис. 3, имеет 16 выходов.

Рис.3. Устройство управления микропроцессора.

Надо иметь в виду, что импульсные сигналы на выходах в общем случае появляются не одновременно, а со сдвигом во времени. Так, УУ на рис.3 может выдать импульс сначала на выходе 3, затем на выходе 1, следом – одновременно на выходах 2 и 5, потом на выходе 4 и т.д. После выдачи последнего импульса в данной цепочке управляющих сигналов текущая операция считается законченной, и вслед за этим на вход УУ может быть подан код новой операции.

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

Регистры являются важными элементами микропроцессора. Регистр – это электронное цифровое устройство для временного запоминания информации в форме двоичного числа, или кода. Запоминающим элементом в регистре является триггер, который может находиться в одном из двух состояний. Одно из этих состояний соответствует запоминанию двоичного нуля, другое – запоминанию двоичной единицы. В общем случае регистр содержит несколько связанных друг с другом триггеров – по одному триггеру на каждый запоминаемый разряд двоичного числа. Число триггеров в регистре называется разрядностью регистра. Например, регистр из восьми триггеров – это 8-разрядный, или 8-битовый, регистр (так как каждый разряд регистра обеспечивает хранение одного бита информации).

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

Многие регистры специализированны по своей функции. Так существует регистр-аккумулятор, или просто аккумулятор, программный счетчик, регистр команд, регистр адреса памяти и т.д. Аккумулятор входит в АЛУ и предназначен для хранения одного из операндов перед выполнением операции в АЛУ или для кратковременного запоминания результата операции. Операнд – это данное, используемое в текущей операции. Например, в операции суммирования операндами являются оба слагаемых.

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

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

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

Изменить роль специализированных регистров или даже узнать их содержимое программным путем нельзя, т.е. эти регистры, как говорят, программно-недоступны. Но в состав микропроцессора входят и регистры, которые программист может использовать в своей программе. Такие регистры микропроцессора называют программно-доступными. Состав и назначение их различны в разных типах микропроцессоров. Однако среди них почти всегда имеется регистр слова состояния процессора (РССП) и несколько регистров общего назначения (РОН).

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

Регистры общего назначения обычно не имеют конкретного функционального назначения. Программист может в своей программе задействовать их так, как он считает нужным. Например, результат выполнения некоторой команды можно не посылать в основную память, а временно запомнить в каком-нибудь РОНе с тем, чтобы позднее, в другой команде, использовать этот результат. Чтобы отличить РОНы друг от друга, им присвоены уникальные имена (или номера), которые и записываются в программе. Существуют микропроцессоры, в которых РОНы применяются и для специальных целей. Например, один из РОНов может выполнять функции программного счетчика, или счетчика команд, хранящего в каждый момент времени адрес очередной команды программы, другой – функции указателя стека, необходимого при обработке прерываний и т.д.

На персональных компьютерах используются микропроцессоры фирмы Intel, а также совместимые с ними фирм AMD, Cyrix, IBM. Исторически на IBM PC-совместимых компьютерах применялись и применяются следующие микропроцессоры: Intel-8088, 80286, 80386 (модификации SX и DX), 80486 (модификации SX, SX2, DX, DX2, DX4), Pentium, Pentium Pro, Pentium II (и его модификации Celeron и т.д.). Основная память. Основная память – важнейший компонент персонального компьютера. Название «основная» отличает эту память от внешней памяти, которая организуется на некотором внешнем устройстве (например, на НГМД). Это название говорит о том, что микропроцессор может обрабатывать только те данные, которые хранятся в основной памяти. Основная память обычно состоит из двух частей – ОЗУ и ПЗУ.

Оперативное запоминающее устройство (ОЗУ) обеспечивает чтение находящихся в нем данных и запись в него новых данных. В компьютерах ОЗУ обычно реализуется как энергозависимая память, т.е. такая память, содержимое которой разрушается («стирается») при выключении питания компьютера. Часто для обозначения оперативной памяти используют аббревиатуру RAM (random access memory), т.е. память с произвольным доступом. Микросхемы ОЗУ собираются в блоки различной емкости. Наиболее распространены емкости 16, 32, 64 и 128 мегабайт. В зависимости от способа работы микросхем памяти они бывают SIMM или DIM, последние наиболее распространены. Для убыстрения доступа к оперативной памяти на быстродействующих компьютерах используется еще и дополнительная специальная сверхбыстродействующая память, так называемая кэш-память. Она хранит копии наиболее часто используемых участков оперативной памяти и как бы занимает промежуточное положение между микропроцессором и оперативной памятью. Кэш-память может располагаться или внутри микропроцессора, или в виде отдельной платы. Так микропроцессоры серий 486 и Pentium содержат небольшую внутреннюю кэш-память. Часто кэш-память, располагаемую отдельно от микропроцессора называют кэш-памятью второго уровня (level two cache, L2 cache). В микропроцессоре Pentium Pro,например, кэш-память второго уровня содержится в едином с ним корпусе. Микропроцессоры 486 серии и Pentium обычно оснащаются кэш-памятью емкостью 256 Кбайт.

Постоянное запоминающее устройство (ПЗУ) обеспечивает только чтение данных, которые однажды были записаны в ПЗУ. Таким образом, содержимое ПЗУ не может быть изменено компьютером, оно постоянно (отсюда и название вида памяти). Это устройство создается как энергозависимая память: ее содержимое не «стирается» при выключении питания компьютера. Запись нужных данных в ПЗУ осуществляется на специальных устройствах, вне компьютера. В ПЗУ обычно помещаются некоторые особо важные или не подлежащие изменению программы и разнообразные константы. Такой вид памяти часто называют ROM (read only memory), или память только для чтения. Поскольку большая часть этих данных, программ связана с обслуживанием ввода-вывода, то часто содержимое ПЗУ называют BIOS (Basic Input-Output System), базовая система ввода-вывода. В компьютере имеется также небольшой участок полупостоянной памяти для хранения параметров конфигурации компьютера. Ее называют CMOS-памятью. Содержимое этой памяти не изменяется при выключении компьютера, так как ее питание осуществляется от небольшого специального аккумулятора. Для изменения значения параметров конфигурации компьютера в BIOS имеется специальная программа SETUP.

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

На любом персональном компьютере имеются контроллеры для управления клавиатурой, монитором, дисководами для дискет, жестким диском и т.д. Некоторые из контроллеров размещаются на основной системной или материнской плате компьютера, тогда они называются встроенными или интегрированными; а другие на отдельных электронных платах – платах контроллеров. Эти платы соединяются (вставляются) с материнской с помощью специальных разъемов – слотов.

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

Основным средством ввода данных на персональном компьютере всегда служит клавиатура. Из других средств ввода-вывода отметим следующие:

1.         Накопители (или дисководы) для гибких магнитных дисков, используемые для чтения и записи на гибкие магнитные дискеты. В настоящее время используются дискеты емкостью 1,4 Mb и 2 Mb.

2.         Накопитель на жестком магнитном диске, предназначенный для записи и чтения на несъемный жесткий магнитный диск (винчестер). Сейчас применяются в основном винчестеры емкостью в 5-10 GB.

3.         Устройства для чтения с компакт дисков, так называемые CD ROMы. Емкость таких дисков обычно составляет 640 Mb. Различаются они скоростью считывания информации, которая может быть сравнена со скоростью работы винчестеров. Они позволяют также проигрывать музыкальные компакт диски.

4.         К другим внешним устройствам можно отнести модемы и факс-модемы – для обмена информацией с другими компьютерами через телефонную сеть; стримеры – для хранения данных на магнитной ленте; звуковая карта – для воспроизведения и записи звуков (музыки, голоса и т.д.).

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

Системная магистраль. Обычно она содержит магистрали адресов, данных и управления. Каждый из них состоит из набора проводников, по которым микропроцессор передает или принимает определенные электрические сигналы. Магистраль адреса предназначена для передачи цифрового адреса ячейки памяти или внешнего устройства, магистраль данных – для передачи и приема данных (например, передача информации из микропроцессора в ОЗУ происходит по магистрали данных). Магистраль управления используется для передачи сигналов управления, которые сопровождают любую передачу адреса или данных.

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

1.         Шина ISA для контроллеров с низкой скоростью обмена данными – клавиатура, мышь, дисководы для дискет и т.д.

2.         Шина PCI для контроллеров быстрых устройств – жесткие диски, видеоконтроллеры, устройства чтения с компакт дисков и т.д.

Некоторые устройства используют другие шины, например сканер может использовать шину типа SCSI.

Источник питания. Обычно источник питания формирует выпрямленные стабилизированные напряжения +12, -5 и +15 в. Этот набор напряжений может изменяться для различных классов микропроцессоров.

Контрольные вопросы

 

1.         Изобразите структурную схему персонального компьютера.

2.         Каким является типовое устройство микропроцессора (модель)?

3.         Какие типы микропроцессоров применяются на персональном компьютере?

4.         Что такое регистр? Приведите примеры регистров микропроцессора.

5.         Устройство управления микропроцессора, что это такое?

6.         Какие типы памяти Вы знаете?

7.         Что представляет собой кэш-память?

8.         Что представляет собой CMOS память?

9.         Что такое контроллер, какие типы контроллеров бывают?

10.        Какие внешние устройства компьютера Вы знаете?

11.        Что такое системная магистраль и какие основные магистрали данных используются в персональном компьютере?

12.        Системный блок компьютера, что он включает?

13.        Дайте сравнительную характеристику внешних устройств персонального компьютера.

 

Программное обеспечение ЭВМ

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

Программное обеспечение (ПО) можно разделить на две части: системное программное обеспечение (СПО) и прикладное программное обеспечение (ППО).

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

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

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

Разработкой системного программного обеспечения занимается особая дисциплина – системное программирование. Предмет системного программирования – теория и методы разработки и эксплуатации программ системного ПО.

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

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

Операционную систему можно рассматривать как программное продолжение и расширение аппаратурной части вычислительной системы.

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

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

На персональных компьютерах типа IBM PC чаще всего применяются следующие операционные системы:

1.         Операционная система MS DOS фирмы Microsoft или совместимые с ней операционные системы – PC DOS фирмы IBM или Novell DOS фирмы Novell;

2.         Операционная система Windows 98, Windows NT Workstations или самая новая операционная система Windows 2000 фирмы Microsoft;

3.         Операционная система OS/2 Warp одной из версий фирмы IBM;

4.         Операционная система Unix или одна из ее модификаций Linux, FreeBSD и т.д.

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

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

Программы-оболочки обычно представляют собой более удобные средства для общения с ЭВМ, чем стандартные средства ОС. Так для MS DOS это – Norton Commander, для Windows – Norton Navigator и т.д. Причем, чаще всего программы-оболочки не стараются заменить операционную систему, а наоборот пополняют ее новыми, более удобными функциями.

Утилиты или программы обслуживания объединяют большое количество системных программ вспомогательного назначения:

1.   Антивирусные программы – основные функции которых - предотвращение заражения компьютера вирусами и ликвидация последствий таких заражений. Различают антивирусные программы детекторы, вакцины, полифаги - в зависимости от их способов борьбы с компьютерными вирусами. В нашей стране наибольшее распространение получили программы AidsTest и Dr.Web.

2.   Программы архиваторы или упаковщики позволяют создавать резервные копии файлов, путем уменьшения их размеров за счет выполнения сжатия, уплотнения информации. Наиболее распространены Arj, Zip, Rar для операционных систем MS DOS и Windows.

3.   Программы для диагностики технического состояния компьютера, которые позволяют проверять исправность всех устройств компьютера;

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

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

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

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

Для персонального компьютера имеются системы программирования для всех популярных языков программирования, таких как Си, С++, Паскаль, Фортран, Бейсик и т.д. В настоящее время стали распространяться системы программирования с языка Java, позволяющие создавать программы-сценарии для Web-страниц в Интернет.

Особым классом систем программирования являются системы разработки приложений типа клиент-сервер. Они позволяют быстро создавать информационные системы для подразделений и предприятий, с использованием средств визуального программирования. Как правило, эти системы позволяют работать с самыми разными базами данных. Наиболее популярными являются системы Delphi, Visual Basic, C-Builder, Sybase, PowerBuilder, SQLWindows.

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

1.   Редакторы документов, позволяющие подготавливать различные документы высокого качества. Они полностью заменили пишущую машинку, да еще позволили дополнительно выполнять целый ряд функций по подготовке высококачественных документов: управление шрифтами, абзацами, перенос слов, проверка орфографии, вставка рисунков, диаграмм и т.д. Наиболее популярны для ОС MS DOS ЛЕКСИКОН, Microsoft Word, WordPerfect, а для Windows – Microsoft Word, Corel WordPerfect, Word Pro фирмы Lotus, Just Write фирмы Symantec.

2.   Табличные процессоры, представляющие документ в виде таблицы из прямоугольных клеток, в которых могут храниться числа, формулы, пояснительные тексты. Все распространенные табличные процессоры позволяют производить перевычисление значений, строить различные графики, включать в таблицы рисунки, использовать макрокоманды, работать с базами данных. Наибольшей популярностью пользуются Microsoft Excel, Lotus 1-2-3, Quattro Pro.

3.   Издательские системы предназначены для подготовки рекламных буклетов, оформления газет, журналов, книг. Их основная функция – верстка, т.е. размещение текста, рисунков и пр. на страницах документа. Наибольшую популярность получили издательские системы – PageMaker фирмы Adobe и QuarkXpress фирмы Quark.

4.   Программы подготовки презентаций могут оформлять слайды для презентаций, помещая туда красивые диаграммы, рисунки, надписи, включать звуковое сопровождение и показывать презентации на компьютере. Наиболее известны программ – PowerPoint фирмы Microsoft, Harvard Graphics фирмы Software Publishing.

5.   Графические редакторы, позволяющие работать с графическими объектами – рисунками, фотографиями. Наиболее известны - Adobe PhotoShop, Corel Draw.

6.   Анимационные программы позволяют создавать трехмерные движущиеся модели объектов, создавать анимационные фильмы. Примером может служить программа 3D Studio фирмы Autodesk.

7.   Программы для создания компьютерного видео при наличии соответствующего оборудования производить монтаж видеофильмов, накладывать титры, видеоэффекты. Пример такой программы – Adobe Premiere.

8.   Бухгалтерские программы позволяют вести бухгалтерский учет, подготавливать финансовую отчетность. Наибольшее распространение получили – 1С-бухгалтерия, Инфо-Бухгалтер. Для предприятий с большим объемом хозяйственных операций, многие из которых уже не относятся к бухгалтерскому учету – складской учет, учет торговых операций, контроль за выполнением договоров, управленческий учет, финансовый анализ деятельности предприятия, целесообразно применение программных комплексов: Парус, Инфософт, Инфин и т.д.

9.   Правовые базы данных содержат тексты нормативных документов и предоставляют возможности поиска и распечатки, например, Гарант, Кодекс, Юрисконсульт.

10. Персональные информационные менеджеры позволяю назначать разовые и повторяющиеся мероприятия, напоминать о делах, встречах, облегчают звонки по телефону. Пример таких программ: Lotus Organizer, Sidekick фирмы Starfish Software.

11. Программы планирования позволяют составлять план-графики работ, например, Microsoft Project, TimeLine фирмы Semantic.

12. Программы распознавания символов позволят вводить с помощью сканера напечатанные тексты, рисунки, графики, фотографии. У нас получила наибольшее распространение программа FineReader фирмы Бит.

13. Программы переводчики позволяют переводить с одного языка на другой с более менее пристойным качеством, например, Stylus фирмы ПроМТ, Сократ фирмы АрсеналЪ.

14. Программы словари (Мультилекс фирмы МедиаЛингва, Контекст фирмы Информатик, Лингво фирмы Бит) – это электронные версии обычных словарей с некоторыми дополнительными возможностями.

15. Системы управления базами данных позволяют управлять большими информационными массивами. Так, весьма мощны и удобны в использовании Lotus Approach, DataEase, Paradox, FoxPro, Access. Для создания больших и многопользовательских информационных систем типа клиент-сервер широко используются Oracle, Microsoft SQL Server, Sybase SQL Server, Iformix.

16. Системы автоматического проектирования (САПР) позволяют осуществлять черчение и конструирование различных предметов и механизмов с помощью компьютера. Среди систем малого и среднего класса наиболее популярна система AutoCad фирмы AutoDesk. Системы более высокого класса включают средства трехмерного моделирования, процессов механобработки, программирования оборудования с числовым программным управлением. Здесь можно отметить системы «Компас» фирмы Аскон и T-Flex CAD фирмы Топсистемы.

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

Большинство программ для персонального компьютера распространяется на коммерческой основе, но имеются и другие формы распространения программ. Так получила большое распространение бесплатная форма распространения программ (freeware) сети Интернет и электронных досок объявлений (BBS). Промежуточное положение между бесплатными и коммерческими программами занимают условно бесплатные программы (shareware). Их можно получить и опробовать некоторое время бесплатно, но при систематическом их использовании необходимо уплатить разработчику определенную (чаще всего небольшую) сумму. В наше использование чаще всего попадают пиратские копии программ (незаконные, взломанные копии коммерческих и условно бесплатных программ), не имеющие ни документации, ни гарантии правильной работы.

Контрольные вопросы

1.   На какие части делится программное обеспечение для персонального компьютера?

2.   Что такое системное программное обеспечение? Какое программное обеспечение оно включает?

3.   Что такое система программирования?

4.   Какие классы наиболее распространенного прикладного программного обеспечения вы знаете?

5.   Каковы основные функции операционной системы?

6.   Приведите примеры наиболее распространенных операционных систем для персонального компьютера?

7.   В чем отличие компилятора от интерпретатора?

8.   Что такое технология клиент-сервер?

9.   Приведите примеры наиболее распространенных антивирусных программ.

10. Дайте классификацию антивирусных программ.

11. Каково назначение программ-архиваторов?

12. Какие основные способы распространения программного обеспечения Вы знаете?

Алгоритмы. Определение и свойства алгоритмов

Широкая известность понятия алгоритма в наше время обусловлена развитием и широким применением электронно-вычислительной техники. Использование ЭВМ способствовала уяснению того, что разработка алгоритма – необходимый этап в процессе решения задачи на ЭВМ и что в связи с этим алгоритмы представляют самостоятельную ценность как интеллектуальные ресурсы общества.

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

Слово «алгоритм» произошло от имени среднеазиатского (узбекского) математика аль-Хорезми (IХ в.) и использовалось в математике для обозначения правил выполнения четырех арифметических действий: сложения, вычитания, умножения, деления. В настоящее время понятие алгоритма используется не только в математике. Его применяют во многих областях человеческой деятельности, например говорят об алгоритме управления производственным процессом, алгоритме игры в шахматы, алгоритме пользования бытовым прибором, алгоритме поиска пути в лабиринте, алгоритме управления полётом ракеты и т.п.

Для пояснения понятия «алгоритм» важное значение имеет определение понятия «исполнитель алгоритма». Алгоритм формулируется в расчете на конкретного исполнителя, например человека, специально дрессированное животное, особую машину – автомат и т.д. Алгоритм является руководством к действию для исполнителя, поэтому значение слова «алгоритм» близко по смыслу к значению слов «указание» или «предписание». Можно сказать, что алгоритм – понятное и точное предписание (указание) исполнителю совершить определённую последовательность действий для достижения указанной цели или решения поставленной задачи. Сказанное не является определением в математическом смысле, а лишь отражает интуитивное понимание алгоритма, сложившееся за долгие годы.

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

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

Во–первых, объектами алгоритма являются символы текста и числа. Над символами текста производятся операции чтения, поиска следующего символа, сравнения символа с символом @ и сравнение символа с одной из гласных букв русского алфавита. Над числами производится операция прибавления единицы.

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

В–третьих, счет числа гласных букв начинается с нуля, поэтому до начала работы счетчик числа гласных должен содержать нуль.

Учитывая эти замечания, сформулируем алгоритм в виде такой последовательности действий:

1. Записать в счетчик 0.

2. Установить указатель на первый символ текста.

3. Если символ не есть @, то перейти к п.4, иначе перейти к пункту 7.

4. Если символ – гласная буква русского алфавита, то увеличить счетчик на единицу.

5. Перевести указатель на следующий символ текста.

6.         Перейти к п.3.

7.         Взять число, находящееся в счетчике, в качестве ответа. Стоп.

Обратим внимание на основные особенности (свойства) алгоритма.

1. Алгоритм имеет некоторое число входных величин – аргументов, задаваемых до начала работы (в приведенном выше примере входными данными являются символы текста и возможно набор гласных букв).

Цель выполнения алгоритма – получение результата (результатов), имеющего вполне определенное отношение к исходным данным.

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

Для алгоритма можно брать различные наборы входных данных, т.е. применять один и тот же алгоритм для решения целого класса однотипных задач, различающихся исходными данными. Это свойство алгоритма обычно называют массовостью. Рассмотренный в примере алгоритм применим к различным текстам на русском языке. Вместе с тем существуют и такие алгоритмы, которые применимы только к единственному набору исходных данных. Например, для алгоритма пользования автоматическим турникетом при входе в метро существует единственный вариант исходного данного – тридцати копеечный жетон. Поэтому понятие массовости требует уточнения. Можно считать, что для каждого алгоритма существует свой класс объектов, допустимых в качестве исходных данных. Тогда свойство массовости означает применимость алгоритма ко всем объектам этого класса. А количество объектов класса (конечное или бесконечное) – свойство самого класса исходных данных.

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

Понятность алгоритма означает знание исполнителя о том, что надо делать для исполнения этого алгоритма.

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

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

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

В математике существуют вычислительные процедуры, имеющие алгоритмический характер, но не обладающие свойством конечности. Так, можно сформулировать процедуру вычисления числа Пи. Такая процедура описывает бесконечный процесс и никогда не завершится. Если же ее искусственно прервать, например ввести условие завершения процесса вычислений вида: «Закончить вычисления после получения N десятичных знаков числа Пи», то получится алгоритм вычисления N десятичных знаков числа Пи. На этом принципе основано получение многих вычислительных алгоритмов: строится бесконечный, сходящийся к искомому решению процесс. Он обрывается на некотором шаге, и полученное значение принимается за приближенное решение рассматриваемой задачи. При этом точность приближения зависит от числа шагов.

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

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

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

6. Каждый шаг алгоритма должен быть выполнен точно и за конечное время. В этом смысле говорят, что алгоритм должен быть эффективным, т.е. действия исполнителя на каждом шаге исполнения алгоритма должны быть достаточно простыми, чтобы их можно было выполнить точно и за конечное время. Поэтому, например, указание вида: «Если любое целое число, большее 6, можно представить в виде суммы трех простых чисел, то счетчик увеличить на 1, иначе счетчик уменьшить на 1» – неэффективно, так как не известен способ доказательства истинности или ложности утверждения, содержащегося в нем. Следовательно, исполнитель не может выполнить этот шаг алгоритма, пока не найдет соответствующего доказательства.

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

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

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

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

Построение такого формального определение было начато с формализации объектов (операндов) алгоритма, так как в интуитивном понятии алгоритма его объекты могут иметь произвольную природу. Ими могут быть, например, числа, показания датчиков, фиксирующих параметры производственного процесса, шахматные фигуры и позиции и т.п. Однако, предполагая, что алгоритм имеет дело не с самими реальными объектами, а с их изображениями, можно считать, что операнды алгоритма есть слова в произвольном алфавите. Тогда получается, что алгоритм преобразует слова в произвольном алфавите в слова того же алфавита. Дальнейшая формализация понятия алгоритм связана с формализацией действий над операндами и порядка этих действий. Одна из таких формализаций была предложена английским математиком А.Тьюрингом в 1936 году, который формально описал конструкцию некоторой абстрактной машины (машины Тьюринга) как исполнителя алгоритма и высказал тезис о том, что всякий алгоритм может быть реализован соответствующей машиной Тьюринга.

Мы будем придерживаться неформального определения алгоритма, формулируемого следующим образом:

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

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

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

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

1. Проверить a>b. Если да, то перейти к указанию 2, иначе – к указанию 3.

2. Взять за новое значение a разность a-b. Перейти к указанию 1.

3. Проверить b>a . Если да, то перейти к указанию 4, иначе - к указанию 5.

4. Взять за новое значение b разность b-a, перейти к указание 1.

5. За результат взять последнее значение a (b). Перейти к указанию 6.

6. Закончить процесс.

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

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

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

·           Ясное понимание хода решения задачи, а лучше нескольких вариантов, получения решения, начиная с ввода (определения) исходных данных.

·           Знание возможностей исполнителя по выполнению тех указаний, с помощью которых записывается данный алгоритм.

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

Виды и способы записи алгоритмов

 

Различают три основных вида алгоритмов:

А) линейные; -

Б) разветвляющиеся;

В) циклические.

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

Алгоритм— разветвляющийся, если в процессе решения требуется проверять некоторые условия и в зависимости от их выполнения или невыполнения, выполняются те или иные группы указаний.

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

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

·           операторная схема алгоритма;

·           блок-схема алгоритма;

·           программа, запись алгоритма на алгоритмическом языке.

 

Операторные схемы алгоритмов

 

Группа указаний, которая имеет свой законченный смысл, называется оператором.

Операторы мы будем обозначать большими буквами с индексами, Ai и т.п. Операторы классифицируется следующим образом.

1) По структурным свойствам:

а) простой; б) составной; в) циклический.

2) По характеру выполняемых действий:

 а) арифметический; б) логический; в) оператор перехода (передачи управления); г) оператор ввода информации в машину; д) оператор вывода информации из машины; е) оператор обмена информацией; ж) оператор остановки и др.

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

Пример 3. Пусть требуется вычислить величины:

(1)


 (2)

Исходными данными для решения задачи является значения переменных x, a. Обозначим оператор ввода исходных данных через B1. Оператор вывода результата (значений y, z) через – B2. Оператор вычисления значения y по формуле (I) - через A1 . Оператор вычисляющий z- по формуле (2), через – A2. Оператор остановки процесса решения через O1 . Переход между операторами обозначим стрелками. Тогда операторную схему алгоритма решения данной задачи можно представить следующим образом:

т.е. вначале следует ввести значения исходных данных – x, a (оператор B1); затем вычислить значение y (оператор A1); вычислив значение y, требуется вычислить значение z (оператор A2); напечатать результат - значения y, z (оператор B2) и остановить процесс – оператор О1.

Если операторы выполняются в том порядке, в котором они записаны, то стрелки можно опустить, т.е. операторную схему можно записать в следующем сокращенном виде: .

Это пример линейного алгоритма. Приведем пример разветвляющегося алгоритма.

Пример 4. Написать операторную схему алгоритма по определению корней квадратного уравнения  при . Опишем процесс (план) решения задачи:

1)         вычисляем значение дискриминанта, ;

2)         сравниваем значения дискриминанта с нулем;

3)   если , то вычисляем x1, x2по формулам


;  ,

 печатаем полученные значения, и останавливаем процесс решения;

4) если , то выводим фразу «Действительных корней нет» и останавливаем процесс решения.

Запишем теперь операторную схему,

Обозначим:

B1 - оператор ввода значений a, b, c;

A1 - оператор вычисляющий дискриминант D;

P1 - оператор проверяющий условие D<0;

A2 - оператор вычисляющий значение x1;

A3 - оператор вычисляющий значение x2;

B2 - оператор вывода значений x1, x2;

B3 - оператор вывода фразы «Действительных корней нет»;

O1, O2 - операторы остановки.

нет

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

да

 
A2A3B2O1

B1A1P1

B3O2

Циклические алгоритмы

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

Различают два вида циклических операторов:

1) Циклический оператор с заданным количеством повторений;

2) Итерационный циклический оператор.

нет

 
Схематически оба эти операторы имеют одинаковую структуру, которую можно изобразить следующим образом:

 A0 A1 P1 (продолжение)

да

 

A0 - оператор или операторы подготовки цикла.

A1 - группа основных операторов, которые требуется повторить. Эту группу операторов обычно называют телом цикла.

 Р1 - условный оператор, который проверяет некоторое условие и если оно выполняемся, то заставляет повторяться еще операторы тела цикла, если нет, то передает управление на продолжение алгоритма.

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

В циклическом операторе первого вида параметр цикла изменяется от одной границы L1 до второй границы L2 с некоторым постоянным интервалом (шагом) h за каждым повторением. В этом случае легко вычислить количество повторений k:

 

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

В операторе A0 осуществляется подготовка цикла, т.е. параметр цикла и величины, которые изменяются в цикле, этими операторами приводятся в исходные значения.

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

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

Относительно расположения вложенных циклов существуют такие правила:

1. Внутренний цикл должен быть строго внутренним.

2. Не допускается пересечений циклов.

Для передач управления из цикла в цикл приняты следующие правила:

1. Передача управления в цикл может быть осуществлена только через его начало;

2. Выход из цикла может быть осуществлен до окончания цикла;

3.         Передачи управления внутри цикла допускаются.

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

 

Блок-схема алгоритма

 

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

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

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

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

Пример 5. Условие задачи опишем следующим образом:

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

·           Если х меньше или равен а, то подоходный налог не начисляется, т.е. у=0.

·           Если х больше а, но меньше или равен b, то подоходный налог равен 10% от х.

·           Если х больше b, но меньше или равен c, то подоходный налог равен 15% от х.

·           Если х больше c, то подоходный налог равен 20% от х.

Значение заработной платы, с учетом вычитаемого подоходного налога, будет z = x – y. Если описанный процесс обозначить математическими формулами, то будем иметь следующую запись:

,

.

Исходными данными для рассматриваемой задачи являются значения x, a, b, c. Результатом будет значение z . Заметим, что в зависимости от требуемого, результатом может быть величина подоходного налога у и заработная плата z. Выводить на печать можно также вместе с результатами и значение х.

Блок схема алгоритма решения данной задачи представлена на рис. 4.

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

Рис. 4. Блок-схема задачи начисления подоходного налога.

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

Пример 6. Проиллюстрируем метод декомпозиции на составлении блок-схемы алгоритма решения квадратного уравнения:

Укрупненная схема алгоритма следующая:


1.         Исходными данными для задачи являются значения коэффициентов уравнения a, b, c. Разукрупнять блок «Ввод исходных данных» не надо, т.к. этот ввод можно осуществить одним оператором.

2.         Блок «Нахождение решения уравнения». Для определения решения уравнения надо вначале вычислить дискриминант . Затем проверить знак дискриминанта. Если дискриминант больше нуля, то уравнение имеет два корня, которые вычисляются по формулам:

;  .

В этом случае результатом будет значения этих корней.

Если дискриминант равен нулю, то уравнение имеет один корень, который вычисляется по формуле: . Это значение и будет результатом в этом случае.

Если дискриминант меньше нуля, то уравнение не имеет действительных корней. В этом случае результатом будет фраза «Уравнение не имеет действительных корней».

Декомпозиция этого блока следующая:


3.         Блок «Вывод результатов». В зависимости от значения дискриминанта, мы можем получить три результата. Поэтому этот блок по сути состоит из трех разных операторов вывода:


Приведем примеры циклических алгоритмов

Пример 7. Составим блок-схему алгоритма начисления процентов по вкладам.


Рис. 5. Блок-схема алгоритма начисления процентов по вкладам.

Описание постановки задачи:

Имеется n записей z1,z2,…zn, характеризующих вклады. Среди характеристик имеются следующие: si – величина вклада; di – дата последнего начисления процентов. Если по вкладу не было начислений процентов, то эта дата совпадает с датой вложения. Требуется произвести начисление процентов из условия p процентов годовых. Начисление проводится в конце некоторого периода (года, квартала) на дату, которую обозначим D. Кроме начислений по каждому вкладу, требуется определить общую сумму начисленных процентов. Суть алгоритма заключается в следующем: просматриваем записи, поочередно, начиная с первой. Для каждой записи находим количество дней, прошедших после последнего начисления процентов. Пусть это количество равно ki для i-ой записи. Тогда соответствующая сумма процентов будет определяться по формуле:


Эту сумму добавляем к si и в общую сумму начисленных процентов, которую обозначим Sp. Блок-схема алгоритма представлена на рис.3.

Пример 8. Блок–схема алгоритма сортировки. (Метод «Пузырек»).

Пусть а12,…,аnесть массив записей, описывающих некоторое множество объектов. Например, аi – анкета i-го работника учреждения. Требуется упорядочить множество элементов аi по возрастанию признака pi, например, по возрасту или стажу работы.

Для сортировки используем алгоритм «Пузырек». Суть его состоит в том, что вначале просматриваются поочередно все соседние пары элементов (ai-1,ai, i=2,3,…,n) и сравниваются признаки, по которым ведется сортировка. Если pi-1<pi, то пара пропускается, и переходят к просмотру следующей пары (ai,ai+1). Если pi-1>pi, то в такой паре меняются местами элементы ai-1 и ai. После просмотра последней пары, элемент обладающий наибольшим значением признака сортировки, автоматически переместится (всплывет) на последнее место. Затем просматриваются все пары без последней (an-1,an). За каждым таким шагом, количество просматриваемых пар уменьшается на единицу. Просмотр заканчивается, когда остается одна пара.

Введем обозначения:

n – количество элементов в множестве. (входной параметр).

a1,…,an – элементы (записи) множества (входной массив и он же результат).

p1,…,pn – значения признака, по которому производится сортировка.

k – граница просмотра на каждом шаге (k=2,…,n).

i - текущий номер просматриваемой пары (i=2,…,k).

Блок-схема алгоритма представлена на рис.6.


Блок-схема: решение: pi-1&lt;pi

Рис. 6. Блок-схема алгоритма сортировки, метод «Пузырек».

Пример 9. Написать блок-схему алгоритма произведения двух матриц (пример алгоритма с тройным циклом).

Рис. 7. Блок-схема алгоритма перемножения двух матриц


Напомним, что перемножать можно матрицы, у которых количество столбцов первой матрицы равно количеству строк второй матрицы. Пусть имеется матрица А, размера n x m и матрица В, размера m x p. Тогда произведением этих матриц будет матрица С=АВ, элементы которой определяются по формуле:

(3)

Формировать матрицу С будем по строкам. Вначале организуем цикл перебора строк. Внутри этого цикла будем перебирать столбцы. Внутри этих циклов организуем цикл накопления суммы произведений элементов i –й строки матрицы А, на элементы j-го столбца матрицы В.

  Контрольные вопросы

1.         Что подразумевается под выражением: составить алгоритм решения задачи?

2.         Важно ли понятие исполнителя при формулировании алгоритма?

3.         Опишите свойства алгоритмов.

4.         Что подразумевается под определенностью алгоритма?

5.         Представляют ли ценность алгоритмы не обладающие свойством массовости? Почему?

6.         Какие бывают виды алгоритмов?

7.         Дайте определение оператора и опишите структурную классификацию операторов.

8.         Опишите классификацию операторов по назначению.

9.         Какие Вы знаете операторы цикла?

10.       Опишите правила передачи управления внутрь цикла и из цикла.

11.       Что такое операторная схема алгоритма?

12.       Что такое блок-схема алгоритма?

13.        Опишите основные конструкции, применяемые при составлении блок-схем алгоритмов.

14.        Опишите структуры операторов цикла с предусловием и постусловием.

15.        Какая структура обеспечивает в алгоритме ветвление по нескольким направлениям?

16.        Какие методы конструирования алгоритмов Вы знаете?

17.        Что такое последовательная декомпозиция алгоритма?

Контрольные задания

Задание 1

1. Дайте определение понятий «информация» и «экономическая информация».

2.         Перевести два числа в двоичную систему счисления и найти их двоичную сумму:

145,875; 1581,5

3.         Составить алгоритмы решения следующих задач:

1. Напечатать таблицу перевода температуры из градусов по шкале Цельсия (С) в градусы шкалы Фаренгейта (F) для значений от 15°С до 30°С с шагом 1°С. (Перевод осуществляется по формуле F=l,8C+32.)

2. В области 10 районов. Известны площади, засеваемые пшеницей, и средняя урожайность (ц/га) в каждом районе. Определить количество пшеницы, собранное в области, и среднюю урожайность по области.

Задание

1.         Дайте определение информационных единиц: реквизита, документа.

2.         Перевести два числа в шестнадцатеричную систему счисления и найти их шестнадцатеричную сумму:

4096; 1581,5

3.         Составить алгоритмы решения следующих задач:

1. Напечатать таблицу соответствия между весом в фунтах и весом в кг для значений от 1 до 10 фунтов с шагом 1 фунт (1 фунт =400г).

2. Задан алфавитный список участников соревнований по плаванию и их результаты. Напечатать фамилии по убыванию результатов.

Задание 3

1.         Какие основные операции выполняются над признаками и основаниями при обработке экономической информации?

2.         Выполнить операцию умножения над двумя двоичными числами:

100011,1(2); 1101,01(2)

3.         Составить алгоритмы решения следующих задач:

1.Дана ведомость результатов сдачи экзаменов по трем предметам в группе, состоящей из 25 студентов. Напечатать отличников.

2.Составить алгоритм, в котором определяется наименьший элемент матрицы А(n,m), а затем его значение вычитается из всех элементов этой матрицы.

Задание 4

1.         Дайте определение составных единиц информации: показателя, массива.

2.         Перевести числа в десятичную систему:

1000111,01(2); 1675, 4(8)

3.         Составить алгоритмы решения следующих задач:

1. Вычислить приближенно площадь одной арки синусоиды, разделив отрезок от 0 до  на 10 частей и суммируя площади десяти прямоугольников с основанием  /10 и высотой, равной значению функции на правой границе каждого интервала.

2. Составить алгоритм определения сумм элементов столбцов матрицы А(n,m).


Задание 5

1.         В чем суть электронной информационной технологии решения задач?

2.         Найти разность двух двоичных чисел:

10000100,1(2); 1011101,01(2).

3. Составить алгоритмы решения следующих задач:

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

2.         Пусть имеется ряд наблюдений х12,…,хn. Составить алгоритм для нахождения цепных приростов, цепных темпов роста, среднего прироста, среднего темпа роста.

Задание 6

1.         Что является теоретической основой компьютерной информатики?

2.         Перевести два числа в шестнадцатеричную систему счисления и найти их двоичную сумму:

145,875;  1581,5

3. Составить алгоритмы решения следующих задач:

1.         Информация о количестве осадков выпадавших в течение месяца, и о температуре воздуха задана в виде двух массивов. Определить, какое количество осадков выпало в виде дождя, какое в виде снега. (Считать, что идет дождь, если температура воздуха >0°С).

2.         Составить алгоритм определения наибольшего элемента матрицы А(n,m) с указанием его номера строки и столбца.

Задание 7

1.         Что понимается под информационной моделью задачи?

2.         Перевести два числа в шестнадцатеричную систему счисления и найти их шестнадцатеричную сумму:

2096; 681,5

3. Составить алгоритмы решения следующих задач:

1.         Одноклеточная амеба каждые 3 часа делится на 2 клетки. Определить сколько клеток будет через 3, 6, 9, 12, ..., 24 часа.

2.         Рост учеников класса представлен в виде массива. Рост девочек кодируется знаком “+”, рост мальчиков знаком “-”. Определить средний рост мальчиков.

Задание 8

1.         Опишите основные конструкции, применяемые при составлении блок-схем алгоритмов.

2.         Выполнить операцию умножения над двумя двоичными числами:

1101011,1(2);  101101,101(2)

3.         Составить алгоритмы решения следующих задач:

1.         В ЭВМ поступают результаты соревнований по плаванию для трех спортсменов. Выбрать и напечатать лучший результат. Решить задачу для следующих наборов данных: 1) 11,3; 10,6; 11; 2) 10; 10,9; 13; 3) 16; 18; 13.

2.         Составить алгоритм определения наименьшего элемента матрицы А(n,m) с указанием его номера строки и столбца.

Задание 9

1.         На какие части делится программное обеспечение для персонального компьютера?

2. Перевести числа в десятичную систему:

1А1F,1(16);  34075, 4(8)

3.         Составить алгоритмы решения следующих задач:

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

2.         Заданы две выборки х12,…,хn; у12,…,уn. Составить алгоритм определения выборочного коэффициента корреляции


,

где:  - среднее значение наблюдений первой выборки;

 - несмещенное среднее квадратичное отклонение наблюдений первой выборки. Аналогично и для второй выборки.

Задание 10

1.         Что такое системное программное обеспечение? Какое программное обеспечение оно включает?

2.         Доказать общезначимость формулы:

AÙ(AÞB)ÞB

3. Составить алгоритмы решения следующих задач:

1.         В области 10 районов. Заданы площади, засеваемые в каждом районе пшеницей, и урожай, собранный в каждом районе. Определить среднюю урожайность пшеницы по каждому району и по области в целом.

2.         Изменение основных фондов отрасли описывается разностным уравнением:

 

.

Задан план инвестиций I0,I1,…,In и начальное значение основных фондов К1. Составить алгоритм для определения значений К2,…,Кn, а также нахождения цепных приростов, цепных темпов роста основных фондов.

Задание 11

1.         Что такое система программирования?

2.         Перевести два числа в двоичную систему счисления и найти их двоичную сумму:

1045,075; 1634,25

3. Составить алгоритмы решения следующих задач:

1.         Определить, сколько различных сигналов может быть подано m флажками различных цветов. Отличие сигналов заключается в порядке расположения разноцветных флажков на мачте. Решить при m=6.

2.         Пусть имеется ряд наблюдений х12,…,хn. Составить алгоритм определения среднего значения хср и среднего квадратичного отклонения sx по формулам:

 

;

 

Задание 12

1.         Какие классы наиболее распространенного прикладного программного обеспечения вы знаете?

2.         Показать, что формула является тавтологией:

 ØAÙ(AÚB)ÞB.

3. Составить алгоритмы решения следующих задач:

1.   В ЭВМ по очереди поступают результаты соревнования по плаванию, в которых участвует п спортсменов. Выдавать на печать лучший результат после ввода результата очередного спортсмена.

2. Составить алгоритм определения будущего значения накопленного капитала по известной процентной ставке р%, начальному вкладу А0 и известным периодическим платежам bi,(i=0,1,…,n-1). Ai+1=p(Ai+bi).

Задание 13

14.       Изобразите структурную схему персонального компьютера.

15.       Выполнить операцию умножения над двумя двоичными числами:

1001,0101(2); 10111,1101(2)

3. Составить алгоритмы решения следующих задач:

1.         Около стены наклонно стоит палка длиной x. Один ее конец находится на расстоянии y от стены. Определить значение угла  между палкой и полом для значений x = 4,5 м и y , изменяющегося от 2 до 3 м с шагом 0,2 м.

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

Задание 14

1.         Каким является типовое устройство микропроцессора (модель)?

2.         Перевести числа в десятичную систему:

B0345(16);  4625,14(8)

3. Составить алгоритмы решения следующих задач:

1.         Задано п троек чисел а, Ь, с. Вводя их по очереди и интерпретируя как длины сторон треугольника, определить, сколько троек может быть использовано для построения треугольника (числа а, b, с при вводе расположить в порядке возрастания).

2.         Для формирования сборной страны по хоккею предварительно выбрано 30 игроков. На основании протоколов игр (всего 10 игр) составлена таблица, в которой содержится штрафное время каждого игрока по каждой игре (штрафное время может составлять 2, 5 или 10 мин). Составить программу, которая составляет предварительный список кандидатов в сборную и определяет для каждого из них суммарное и штрафное время. Игроки, оштрафованные хотя бы один раз на 10 мин, из кандидатов в сборную исключаются.


Задание 15

1.         Какие типы микропроцессоров применяются на персональном компьютере?

2.         Найти разность двух восьмеричных чисел:

120405,6(8); 17526,71(8).

3. Составить алгоритмы решения следующих задач:

1.         Написать программу, которая спрашивала бы сокращенное имя, а печатала полное (например, Саша - Александр) для пяти ваших друзей. Ввод незнакомого имени должен провоцировать заявление типа: “Я с Вами не знакома”. Необходимые данные задать самостоятельно.

2.         Сформировать из матрицы А(10,10) матрицу В(10,10) по следующим правилам:

а) элементы матриц А и В принимают только значения 0 или 1;

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

в) если сумма S значений соседей элемента aij меньше двух или больше трех, то bij=0;

г) если сумма S значений соседей равна двум, то bijij;

д) если сумма S значений соседей равна трем, то bij=1.

По окончании формирования матрицы В значения элементов построчно вывести на печать, заменяя 0 - символом “ “; 1 - символом *.

Задание 16

1.         Что такое регистр? Приведите примеры регистров микропроцессора.

2.         Пользуясь таблицей истинности доказать тавтологию:

(AÞB)Ù(BÞC)Þ(AÞC)

3. Составить алгоритмы решения следующих задач:

1.         Составить программу, реализующую эпизод сказки: спрашивает, куда предпочитает пойти герой (налево, направо или прямо), и печатает, что его ждет в каждом случае. Ответ ЭВМ присвоить символьной переменной и напечатать. Текст вопросов и ответов ЭВМ задать самостоятельно.

2. В соревнованиях участвуют три команды по 6 человек. Результаты соревнований в виде мест участников каждой команды (1-18) размещены в трех массивах, содержащих по 6 компонент. Определить команду - победителя, вычислив количество баллов, набранное каждой командой. Участнику, занявшему 1-е место, начисляется 5 баллов, 2-е - 4, 3-е - 3, 4-е - 2, 5-е - 1, остальным - 0 баллов.

Задание 17

1.         Какие типы памяти Вы знаете?

2.         Перевести два числа в шестнадцатеричную систему счисления и найти их шестнадцатеричную сумму:

3025;  4612,25

3. Составить алгоритмы решения следующих задач:

1.         Начав тренировки, спортсмен в первый день пробежал 10 км. Каждый следующий день он увеличивал дневную норму на 10 % от нормы предыдущего дня. Через сколько дней спортсмен пробежит суммарный путь 150 км?

2.         Известно, что и Москве самыми теплыми являются дни с 15 июля по 15 августа. Для проведения фестиваля были выбраны 7 следующих подряд дней, наиболее теплых по данным за последние 10 лет. Составить программу для выполнения этой работы на ЭВМ.

Задание 18

1.         Что представляет собой кэш-память?

2.         Выполнить операцию умножения над двумя двоичными числами:

110101,01(2); 10111,11(2)

3. Составить алгоритмы решения следующих задач:

1.         Составить программу для определения подходящего возраста кандидатуры для вступления в брак, используя следующее соображение: возраст девушки равен половине возраста мужчины плюс 7, возраст мужчины определяется соответственно как удвоенный возраст девушки минус 14. Данные для проверки работы программы задать самостоятельно.

2. Японская радиокомпания провела опрос 250 радиослушателей по вопросу: “Какое животное Вы связываете с Японией и японцами?”. Составить программу получения пяти наиболее часто встречающихся ответов и их долей (в %).

Задание 19

1.         Что такое контроллер, какие типы контроллеров бывают?

2.         Пользуясь законами эквивалентности упростить:

XÚ(YÚX)ÚY

3. Составить алгоритмы решения следующих задач:

1.         В киоске продается газета стоимостью 70 коп. и журнал стоимостью 1 грн. 20 коп. Составить программу, которая спрашивает о желании покупателя (журнал или газета?), принимает деньги (сумма денег вводится с клавиатуры) и печатает причитающуюся сдачу. Исходные данные задать самостоятельно.

2.         Составить программу для ведения протокола баскетбольной игры. Во время игры машина ведет учет набранных очков и фолов каждого игрока. Игрок, получивший 5 фолов, удаляется из игры (эта информация должна появляться на экране). В конце игры должна выводиться информация о сумме очков, набранных каждым игроком, в порядке убывания.

Задание 20

1.         Какие внешние устройства компьютера Вы знаете?

2.         Найти разность двух двоичных чисел:

11010000,01(2); 1011101,11(2).

3. Составить алгоритмы решения следующих задач:

1.         Вводя в цикле по 5 оценок каждого студента, получить число студентов, не имеющих оценок 2 и 3. В группе учится п, студентов.

2. Результаты переписи населения хранятся в памяти ЭВМ. Используя массивы фамилий и года рождения, напечатать фамилии и подсчитать общее число жителей, родившихся раньше 1928 года.

Задание 21

1.         Что такое системная магистраль и какие основные магистрали данных используются в персональном компьютере?

3.         Пользуясь законами эквивалентности упростить:

(XÚY)Ù(XÚØY)

3. Составить алгоритмы решения следующих задач:

1.         В 1995 году урожай ячменя составил 20ц с га. В среднем каждые 2 года за счет применения передовых агротехнических приемов урожай увеличивается на 5 %. Определить, через сколько лет урожайность достигнет 25ц с га.

2.         Результаты соревнований фигуристов по одному из видов многоборья представлены оценками судей в баллах (от 0 до 6). По результатам оценок судьи определяется место каждого участника у этого судьи. Места участников определяются далее по сумме мест, которые каждый участник занял у всех судей. Составить программу, определяющую по исходной таблице оценок фамилии и сумму мест участников в порядке занятых ими мест. Число участников не более 15, число судей не более 10.

Задание 22

1.         Системный блок компьютера, что он включает?

2.         Перевести два числа в шестнадцатеричную систему счисления и найти их шестнадцатеричную сумму:

1034; 2032,5

3. Составить алгоритмы решения следующих задач:

1.         Определить средний рост девочек и мальчиков одного класса. В классе учится п учеников.

2.         В памяти ЭВМ хранятся списки номеров телефонов и фамилий абонентов, упорядоченные по номерам телефонов, для каждого из пяти телефонных узлов города. Один телефонный узел включает несколько АТС (не более 10), Номера АТС (первые две цифры номера телефона), относящихся к каждому телефонному узлу, также хранятся в памяти ЭВМ. Составить программу, обеспечивающую быстрый поиск фамилии абонента по заданному номеру телефона.

Задание 23

1.         Опишите свойства алгоритмов.

4.         Пользуясь законами эквивалентности упростить:

ØXÞ(XÙY)

3. Составить алгоритмы решения следующих задач:

1.         Определить суммарный объем в литрах 12 вложенных друг в друга шаров со стенками 5 мм. Внутренний диаметр внутреннего шара равен 10 см. Считать, что шары вкладываются друг в друга без зазоров.

2.         При выборе места строительства жилого комплекса при металлургическом заводе необходимо учитывать “розу ветров” в данной местности. На основании данных ежедневного определения направления ветра, проводимого в течение года, определить целесообразное взаимное расположение промышленной и жилой зоны.

 Указание. Направление ветра кодируется следующим образом:1 – северный; 2 – южный; 3 – восточный; 4 – западный; 5 - северо-западный;

6 - северо-восточный; 7 - юго-западный; 8 - юго-восточный


Задание 24

1.         Дайте определение оператора и опишите структурную классификацию операторов.

2.         Перевести числа в десятичную систему:

1010101,0111(2); 10705,014(8)

3. Составить алгоритмы решения следующих задач:

1.                                        Начав тренировки, спортсмен в первый день пробежал 10 км. Каждый следующий день он увеличивал дневную норму на 10 % от нормы предыдущего дня. Через сколько дней спортсмен будет пробегать в день больше 20 км?

2. Составить результирующую таблицу первенства по футболу, в котором участвуют 10 команд. В качестве исходной информации задан счет: количество забитых (пропущенных) мячей в каждой проведенной игре. Для получения итогового результата необходимо по заданной таблице забитых (пропущенных) мячей составить таблицу очков (выигрыш - 3, ничья - 1, проигрыш - 0). Далее определить сумму очков для каждой команды и в соответствии с этим распределить команды по местам. Если сумма очков у двух команд одинакова, то сравниваются разности забитых и пропущенных мячей.

Задание 25

1.         Что такое блок-схема алгоритма?

2.         Записать логическое выражение, которое принимает значение истина, если точка с координатами (x,y) попадает в заштрихованную область. На рисунке окружности имеют радиусы: большая – 9, меньшая – 5, центр первой имеет координаты (1,4), а второй – (-2,0). Прямая пересекает ось ОХ в точке (11,0), а ось ОУ в точке (0,9).

3. Составить алгоритмы решения следующих задач:

а) Составить таблицу стоимости порций сыра весом 50, 100, 150, ..., 1000 грамм (цена 1 кг 15 грн.).

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


[1] Годичное Общее собрание Академии наук СССР //Вестн. АН СССР, 1983. №6. с.3-60.

[2] А.П. Ершов. Информатика: предмет и понятие. // В сб. Кибернетика. Становление информатики. – М.: Наука, 1986. -192с.

[3] Экономическая информатика, /Под ред. П.В. Конюховского и Д.Н. Колесова. –СПб:Питер, 2000. -560с.

[4] Дибкова Л.М. Інформатика та комп’ютерна техніка: Посібник для студентів вищих навчальних закладів. –К.: Видав. Центр «Академія», 2002. -320с (Альма-матер).

[5]Інформатика: Комп’ютерна техніка. Комп’ютерні технології: Підручник /За ред.. О. І. Пушкаря. –К.: Вид. центр «Академія», 2002. -704с. (Альма-матер).

[6] В.С. Михалевич, Ю.М. Каныгин, В.И. Гриценко Информатика –новая область науки и практики. // В сб. Кибернетика. Становление информатики. –М.: Наука, 1986. -192с.

[7] А.П. Ершов Информатика: Предмет и понятие. // В сб. Кибернетика. Становление информатики. – М.: Наука, 1986. -192с.

[8] А.А. Дородницын Информатика: Предмет и задачи. . // В сб. Кибернетика. Становление информатики. – М.: Наука, 1986. -192с.


Информация о работе «Информатика и компьютерная техника»
Раздел: Информатика, программирование
Количество знаков с пробелами: 126351
Количество таблиц: 17
Количество изображений: 13

Похожие работы

Скачать
18684
3
0

... № темы Наименование Темы Объем, час. в том числе,   лекции, час. лабораторные работы, час.     1 2 3 4 5 6 7 8 1 семестр Введение в информатику и вычислительную технику Основы устройства и функционирования ЭВМ Операционная система Windows Современная вычислительная техника Программные ...

Скачать
188099
34
8

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

Скачать
69299
3
0

... имеет детей. 3. ЗадачаЗав. кафедрой ПреподавательКИЕВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ КРЫМСКИЙ ЭКОНОМИЧЕСКИЙ ИНСТИТУТ по дисциплине: «Информатика и компьютерная техника» Экзаменационный билет № 30 1. Установление связей 1:1 и 1:N в FoxPro. 2. Обеспечить форматный ввод переменной x и форматный вывод значения функции y, используя оператор ...

Скачать
120115
3
4

... одним из синонимов научно-технического прогресса. Слово это появилось в начале 60-х годов во французском языке для обозначения автоматизированной обработки информации в обществе. Информатика (от французского information - информация и automatioque -автоматика) - область научно-технической деятельности, занимающаяся исследованием процессов получения, передачи, обработки, хранения, представления ...

0 комментариев


Наверх