Программы и средства персонального компьютера.

      Комментарии к записи Программы и средства персонального компьютера. отключены

Лекций, 20 практических занятий.

Информатика.

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

Программы и средства персонального компьютера.

Классификация программных средств.

Программные средства (ПС) представляют собой общие понятия, которые включают в себя 2 основных понятия: 1) программные обеспечения (ПО) 2) программный продукт (ПП)

ПС — набор компьютерных программ, процедур, документаций и данных.

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

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

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

Классификация ПС:

1)Легитимность (Законность) распространения

2)Характер использования ПС

3)Функциональные назначения

По легитимности распространения ПС можно разделить на 2 большие группы:

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

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

Первая группа разбивается на 3 группы: 1) бесплатные ПС (freeware) (через интернет (программы-браузеры, антивирусные программы, файловые менеджеры)) 2) условно бесплатные (shareware) (демо-версии) 3) коммерческие программы (commerce)

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

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

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

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

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

3)Система программирования (Programming system) (Инструментальные системы) (Представляет собой программы, предназначенные для разработки ПС (visual studio))

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

Качественные и количественные характеристики ПС.

Качественные характеристики:

1)фирма-производитель программы

2)удобство использования (доброжелательный пользовательский интерфейс)

3)возможность использования ПС при изменении условий его применения и эксплуатаций

4)качество сервисного обслуживания

5)привлекательность упаковки

Количественные характеристики:

1)информационный объем ПС

2)требование к информационному объему оперативной памяти

3)требование к информационному объему внешней памяти (НЖМД)

4)требование к операционной системе к техническим средствам обработки информации

5)стоимость

6)дата выпуска

Жизненный цикл ПС:

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

2)эксплуатация компьютерной программы и её сопровождение

3)завершение жизненного цикла

  1. Системные ПС (system software)

Относят:

1)базовые ПС (программы операционной системы, программы базовой системы ввода/вывода (BIOS (Basic Input Output System) это программы, предназначенные для загрузки ОС и тестирования аппаратных средств компьютера в период загрузки))

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

ОС – комплекс программ, предназначенных для эффективного использования всех средств ПК в процессе решения задачи и организации взаимодействия пользователя и ПК. Т.о. обеспечивает совместное функционирование всех устройств компьютера и предоставляет пользователю доступ к его ресурсам (осуществление диалога с пользователем, запуск программ на выполнение, управление выполнения программ, управление файловой системой, распределение ресурсов компьютера (оперативной памятью, внешних устройств и т.д.), передача информации между различными внутренними устройствами компьютера, динамическая компоновка выполняемых программ, обработка прерываний и обеспечение многозадачной работы, программная поддержка работы периферийных устройств). В настоящее время наиболее востребованными являются многопользовательские ОС, их основное отличие от однопользовательских состоит в том, что у них имеется средство защиты от несанкционированного доступа. Т.е. в таких ОС каждому пользователю выделяется свой логин и пароль. Современные многопользовательские ОС: 1) семейство windows (95, 98, 2000, 2000М, XP, Vista, 7) 2) apple (OC Mac (Macintosh)OS X) 3) Unix (для организаций сетей) 4) Limix

Классификация ОС смотреть учебник Косорева.

Файловые менеджеры предназначены для управления файлами: windows – проводник (explorer), total commander, FAR manager, Frigate

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

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

1)по среде обитания (загрузочные, файловые, файлово-загрузочные, системные, сетевые)

2)по способу заражения среды обитания (резидентные, нерезидентные)

3)по степени воздействия (деструктивные возможности) (безвредные, неопасные, опасные, очень опасные)

4)по алгоритму функционирования (паразитические, вирусы-репликаторы (черви), вирусы-невидимки (стелс), вирусы-мутанты, вирусологические бомбы, макровирусы, вирусы «троянские кони», вирусы-спутники и т.д.)

Существует наука компьютерная вирусология. Для излечения существует программа – антивирус. Антивирусная программа подразделяется: программы-детекторы, программы-докторы, программы-ревизоры и т.д.

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

Название Особенность Преимущества Недостатки
Dr Web (8,5 балла) Антивирусный комплекс Занимает небольшой объемоперативной памяти, вирусные базы имеют небольшой объем, высокая частотаобновлений вирусных баз, комплекс имеет дополнительные базы данных дляобнаружения вредоносных сетевых (шпионских) вирусов (Adware, Spyware, Rikware) Относительно высокаявозможность ложных срабатываний, возможность конфликта с другим ПО
Norton Antivirus Symantec Corp. (Калифорния, США) (8,8 балла) Антивирусный комплекс Занимает небольшой объемоперативной памяти, высокая защита от сетевых вирусов в интернете и почтовыхпрограммах, хорошая излечимость, имеет высокую сервисную продержку. Возможность ложныхсрабатываний, невысокая скорость сканирования.
Kaspersky Antivirus (8,2 балла) Антивирусный комплекс Высокий % обнаружения вирусов,проверяет на вирусы почтовые базы данных, хорошо определяет макровирусы ивирусы в архивах (zip,rar),ежедневное обновление вирусных баз Занимает большой объем оперативнойпамяти, замедляет работу компьютера, невысокая излечимость зараженных файлов.
Eset NOD32 Eset Software(Калифорния, США) (9,4 балла) Антивирусный комплекс Высокая скорость сканирования,не замедляет работоспособность компьютера, ежедневное обновление вирусных баз Возможность ложных срабатываний
Zone Alarm Zone Labs Inc (Калифорния,США) (9,5 балла) Антивирусный комплекс Высокая комплексная защита отвирусов и сетевых вирусов, при попытке использования интернет соединениемвраждебной программой предупреждает пользователя, имеет ограничение напосещение нежелательных сайтов, ежедневное обновление вирусных баз Возможность ложных срабатываний
Avast! ALWIL Software (Чешскаяреспублика, Прага) (9,8 балла) Антивирусный комплекс,ориентированный на работу в сети интернет Хорошо интегрируется с ПОпользователя, Осуществляет сканирование архивов входящей и исходящей почты,имеет возможность автообновлений через интернет, имеет специализированный скринсейвер. Высокая возможность ложныхсрабатываний
Panda Antivirus Panda Software (Бильбао, Испания) (6,7 балла) Антивирусный комплекс Надежность и простота виспользовании, блокирует вторжение хакеров и взломщиков через Wi Fi соединение через сетевой экран, высокая скоростьсканирования Ориентирована на домашнихпользователей

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

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

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

Прикладное ПО

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

1)Программы для создания и редактирования текстовой информации

2)Программы для обработки табличных данных

3)Программы для создания и обработки графической информации

4)Программы деловой и презентационной графики

5)Программы научной инженерной графики

6)Программы управления базами данных

7)Интегрированные программные пакеты общего назначения

8)Программы для управления предприятием, бухгалтерского учета, маркетинга, коммерции и учета

9)Справочно-правовые программы

10) Программы автоматизированного проектирования (САПР), организация автоматизированного рабочего места (АРМ) и прочее

11) Программы для автоматизации решения задач в области фундаментальных и прикладных наук

12) Сетевое ПО специального назначения

13) Программа для экспертных оценок

14) Программы для автоматизации картографических и геодезических работ (гео — информационные системы)

15) Обучающие программы

16) Программы переводчики

17) Программы для развлечений и компьютерных игр

1)Условно эти программы можно разделить на 3 группы: 1) текстовые редакторы 2) текстовые процессоры 3) издательские системы. К текстовым редакторам относят программы, предназначенные для создания, редактирования, форматирования, сохранения и печати документов (блокнот, Word Pad, Lexicon). К текстовым процессорам относятся программы, имеющие более широкий спектр возможностей по отношению к текстовым документам (Word). Издательские системы это программные комплексы, которые автоматизируют процесс верстки полиграфических изданий с целью подготовки документов к публикации (Adobe Page Maker).

2)Служат для обработки различных типов данных, представленных в табличной форме (табличные процессоры) (MS Excel). Наиболее распространяемый процессор Star Office Calc.

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

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

5)Для обработки и исследования научных исследований.

6)Программы, позволяющих обрабатывать обращение к базам данных, которые поступают от прикладных программ пользователя.

7)Служат для решения разнообразных офисных задач (ввод и обработка текстов и графических изображений, разнообразные вычисления, поиск и обработка информаций больших объемов, сканирование и распознавание текстов, подготовка презентаций и прочее). 1. MS Office 2. Word Perfect Office (Corel) 3.Star Office (Sun).

8)Относятся комплекс компьютерных программ “1C”. Кроме этого программы БЭСТ-маркетинг, Statistica и т.д.

9)Представляет собой компьютерные программы для автоматизации процесса поиска и получения нормативных или иных правовых документов. Среди российских справочных правовых систем можно отметить: Гарант (НПП «Гарант-Сервис»), Консультант + (АО «Консультант Плюс»), «1С» (1С: Кодекс; 1С: Гарант и т.д.).

10) Представляет собой профессиональные программные комплексы для автоматизации проектно-конструкторных работ. AutoCAD, PCad, Компас 3D.

11) MathCAD.

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

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

14) Они предназначены для автоматизации картографических и геодезических работ на основе информации, полученных аэрографическим или топографическим методом. (Map Info)

15) Они распространяется с помощью оптических дисков, и приобретаются в соответствующих магазинах. Или через интернет. (www.intuit.ru)

16) Осуществляет контекстный перевод с одного языка на другой с более-менее пристойным качеством. Сократ (Арсеналъ), AABBYY Lingvo (AABBYY Software).

17) Мультимедийные программы. Компьютерные игры: ролевые игры и стратегии, азартные игры, экономические, квесты, логические, симуляторы и т.д.

Система программирования (инструментальные системы)

Они представляют собой программы, предназначенные для разработки ПО. Данные программы обеспечивают среду (технологии) разработки компьютерных программ на том или ином языке программирования. Современные системы программирования представляют пользователям широкие возможности и удобные программные средства разработки компьютерных программ и является в основном интегрированными средами разработки приложений, ориентированными на определенный язык программирования. Состав современных систем программирования: интегрированная среда разработчика программ (включает в себя программные средства, реализующие интерфейс программиста; в настоящее время используется графический интерфейс), транслятор языка программирования (переводчик; представляет собой программу, реализующую трансляцию написанной программы с одного языка программирования в другой, конечным результатом трансляции является перевод исходной программы на машинный компьютерный язык; процесс трансляции в современных системах программирования реализуется с помощью 3 основных способов: компиляция, интерпретация, комбинированный; в процессе компиляции (реализует ее программы, называемые компилятором) исходный текст программы, написанный на языке высокого уровня, целиком преобразуется в код программы на машинном языке, результатом является получение объектного файла, имеющего расширение exe или com; преимущества: высокая скорость, не требуется установки инструментальной системы для запуска уже созданной программы; после получения объектного файла невозможно внести изменения в программу; в процессе интерпретации исходный текст программы переводится в машинный код, исполняется построчно, выполняет последовательно каждую команду исходного кода отдельно, а не транслирует его целиком как компилятор; преимущества: могут быть внесены изменения в программе (процесс интерпретации позволяет эффективно производить отладку программ), недостатки: программа работает более медленней, обязательно на компьютере должна быть установлена инструментальная система, на которой она была написана; преимущества и недостатки привели к тому что современные системы используют комбинированные способы (интерпретация программы на этапе отладки, после завершения процесса отладки осуществляется комбинирование)), компоновщик или редактор связи (задача – связать объектный файл с машинным языком компьютера), библиотека стандартных программ (библиотека подпрограмм), вспомогательные программные средства – программы-отладки (системы отладки), справочные системы. Среди разработчиков систем программирования можно отметить 3 фирмы: Microsoft – Microsoft Visual Studio, Symantec- Си ++, Borland – Java, Си ++.

Классификация языков программирования.

Языком программирования называется формальный язык, обеспечивающий описание конкретных задач, формулируемых человеком, и решаемых с помощью компьютера. Языки программирования представляют собой формальные искусственные языки, имеющие свой алфавит, синтаксис и семантику. Под алфавитом языка понимается разрешенный к использованию набор символов, с помощью которого могут быть образованы слова и величины данного языка. Синтаксис – система правил, определяющих допустимые конструкции языка программирования из букв алфавита. Семантика – система правил, однозначного толкования каждой языковой конструкции, позволяющей осуществлять однозначный процесс обработки данных. Взаимодействие синтаксических и семантических правил определяет основные понятия языка. Строгой классификации языков программирования не существует, поэтому в зависимости от классификационного признака можно произвести их условную классификацию. Если в качестве классификационного признака принять специфику организационной структуры языка программирования, то все языки программирования делятся на декларативные и процедурные. Основное отличие декларативных языков программирования от процедурных языков заключается в декларативности описания функции. Программа, написанная на декларативных языках, описывает решение задачи, но не предписывает последовательность действий для ее решения. Декларативные языки делятся на функциональные и логические языки. Программа, написанная на функциональных языках, представляется в виде совокупности определения функций, заданных обычной системой линейных списков (LISP). Логические языки основаны на теории математической логики и построены на задании отношений между входными данными и логическими законами (PROLOG). Процедурные языки (императивные) описывают процедуры, т.е. последовательность шагов для получения искомого результата задачи и программы, написанные на процедурных языках, состоят из последовательности команд, называемых операторами. Процедурные языки сильно зависят от типа микропроцессора, используемого компьютера. Поэтому их принято делить на машинно-зависимые (зависят от типа микропроцессора и называют языками низкого уровня, в силу того, что их операторы языка близки к машинному коду и ориентированы на конкретные команды микропроцессора) и машинно-независимые (языки высокого уровня, в которых не учитываются особенности конкретных компьютерных архитектур и создаваемые в них программы могут быть преобразованы в другие зыки программирования (машинно-зависимые) с помощью соответствующих программ-трансляторов). Ярким представителем машинно-зависимых языков является язык Ассемблера (для программирования контроллера). Машинно-независимые языки делятся на группы:

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

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

3.процедурно-ориентированные языки (представляет собой один из самых больших классов языков, в их основе лежит принцип: что необходимо сделать, чтобы решить поставленную задачу; он реализуется в виде записей последовательностей оператора, которые затем выполняются для получения конкретного результата) (язык FORTRAN, COBOL, Basic, Pascal и т.д.)

4.проблемно-ориентированные языки (предназначенные для описания процессов обработки информации какой-либо узкой специфической области) (язык GPSS, RPG, APL и т.д.)

5.объектно-ориентированные языки (основывается на концепции объектно-ориентированного программирования (ООП)) (язык JAVA, Delphi, Visual Basic, C++ и т.д.)

6.сценарные языки и т.д.

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

Объект = свойства (данные)+процедуры (методы).

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

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

Сценарные языки используются для программирования в интернете (JavaScript, VBScript, VBA (Visual Basic for Application)). Так же существуют зыки программирования баз данных (SQL).

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

Основы алгоритмизации и программирования

Основные термины и их определения

Алгоритм (algorithmi; математик 9 века Аль-Хорезми). Среди его выдающихся открытий являются основные правила арифметических операций. Применительно к вычислительным системам. Алгоритм – точное предписание, определяющие вычислительный процесс, ведущий от варьируемых начальных данных к искомому результату. Определение по ГОСТу 19004-80. В современном понимании (информационном), алгоритм – информационная модель, описывающая процесс преобразования объекта из начального состояния в конечное, в форме последовательности команд. Алгоритмизация – процесс разработки и обоснования алгоритма. Этот процесс включает в себя: выбор метода проектирования алгоритма, выбор формы записи алгоритма, выбор тестов и методов тестирования и т.д. Программа – алгоритм, записанный в форме воспринимаемой компьютером (ГОСТ 19004-80) или данные, предназначенные для управления конкретными компонентами системы обработки информации (ГОСТ 19781-90). Программирование – все виды деятельности, выполняемы для создания продукции ПО, т.е. теоретическая и практическая деятельность, связанная с созданием программ.

Основные этапы решения задач с помощью АИС (автоматизированных информационных систем) обработки информации.

Решение любых задач с помощью АИС предполагает несколько этапов:

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

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

3)разработка алгоритма (выбор метода проектирования алгоритма; выбор способа описания алгоритма; выбор тестов и метода тестирования; проектирование алгоритма)

4)программирование (выбор языка программирования; уточнение способов организации данных; запись алгоритма на выбранном языке программирования)

5)тестирование и отладка (синтаксическая отладка; отладка семантики и логической структуры; тестовые расчеты и анализ результатов тестирования; модернизация программы)

6)анализ результатов решения задачи и уточнение в случае необходимости информационной модели с повторным повторением этапов 2-5)

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

1 и 2 этапы относятся к постановочной части задачи, на которых составляется техническое задание. К разработанному алгоритму на 3 этапе предъявляются следующие требования (свойства алгоритма): дискретность алгоритма (свойства алгоритма, означающая, что процесс решения задачи, определяемый алгоритмом, разделен на решение определенных задач), определенность алгоритма (каждая команда алгоритма должна быть понятны исполнителю, не оставлять места для ее неоднозначного толкования и неопределенного исполнения), результативность алгоритма (свойства алгоритма, состоящие в том, что он всегда приводит к результат через конечное число шагов), массовость (свойства, заключающиеся в том, что каждый алгоритм разработанный для решения конкретной задачи, должен быть применим дл решения задач этого типа), компактность (свойства алгоритма, заключающиеся в том, что он лаконичен), эффективность алгоритма (свойства алгоритма, заключающиеся в том, что должен выполняться с минимальными затраты компьютерными затратами и за разумное количество времени). На 4 этапе – исходя из особенностей программы. На 5 – отладка программы (синтаксические, семантические). И так далее.

Основные способы написания алгоритмов.

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

1)с помощью устройства ввода, компьютер может считывать значения входных величин и помещать их в ячейки, выделенных для них. Посредством такой операции, называемой «ввод», реализуется возможность решения задачи с разными значениями исходных величин.

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

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

4)При выполнении программы, компьютер может сравнивать значения величин, с целью проверки условия равенства, меньше или больше. И в зависимости от результатов проверки реализовать один из вариантов действий. Называется «условный переход». Алгоритм, в котором используется этот переход, называется «разветвляющийся алгоритм».

5)С помощью устройства вывода, компьютер может выводить значения величин, полученных в результате решения задач. Операция носит название «вывод».

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

1) Словестно-формульный способ написания алгоритма. При таком способе, последовательности действий описывается с помощью слов и формул.

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

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

Алгоритмические структуры.

Изучение инструментальной системы Visual Studio 6.0. Эту инструментальную систему разработала компания Microsoft. В состав входит ряд языков программирования, язык – visual basic 6.0.

Этапы программирования:

1)в соответствии с поставленной задачей разрабатываем форму проекта. Форма проекта является пользовательским интерфейсом. На форму переносится основные объекты в соответствии с заданием. Созданные приложения (программа) состоит из формы (пользовательского интерфейса), которая сохраняется на компьютере и имеет расширение .frm. На ряду с формой сохраняется и программный код, которая имеет расширение .vbp. Все это вместе называется проектом, приложением или программой.

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

1) TextBox

2) CommadBatton

Подпрограмма обработки командной кнопки ComExit по событию clic – Private Sub ComExit_Click ()

Beep

End

End Sub

Private Sub ComStart_Click ()

Text1. Text = “Информатика”

End Sub

Private Sub ComClear_Click ()

Text1. Text = “”

End Sub

Пробел_Enter – перенос оператора

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

Интерфейс: label, textbox и кнопки

Rnd – случайная функция (0-1)

Val – преобразует из текста в число

Статьи к прочтению:

MiyaGi sHau – Персональный кайф


Похожие статьи: