Главная страница
Навигация по странице:

  • Л. И. Долинер О О с с н н о о в в ы ы п п р

  • ЧТО ТАКОЕ «ПРОГРАММИРОВАНИЕ» 1. Что такое «программа» и как ее исполняет компьютер

  • 2. Языки высокого уровня. Компиляторы и интерпретаторы

  • Program

  • Л. И. Долинер основы программирования в среде pascalabc. Net учебное пособие


    Скачать 1.88 Mb.
    НазваниеЛ. И. Долинер основы программирования в среде pascalabc. Net учебное пособие
    Дата26.08.2022
    Размер1.88 Mb.
    Формат файлаpdf
    Имя файла978-5-7996-1260-3_2014 (2).pdf
    ТипУчебное пособие
    #653536
    страница1 из 11
      1   2   3   4   5   6   7   8   9   10   11

    Л. И. ДОЛИНЕР
    ОСНОВЫ ПРОГРАММИРОВАНИЯ
    В СРЕДЕ PascalABC.NET
    Учебное пособие

    Министерство образования и науки Российской Федерации
    Уральский федеральный университет имени первого Президента России Б. Н. Ельцина
    Л. И. Долинер
    О
    О
    с
    с
    н
    н
    о
    о
    в
    в
    ы
    ы
    п
    п
    р
    р
    о
    о
    г
    г
    р
    р
    а
    а
    м
    м
    м
    м
    и
    и
    р
    р
    о
    о
    в
    в
    а
    а
    н
    н
    и
    и
    я
    я
    в
    в
    с
    с
    р
    р
    е
    е
    д
    д
    е
    е
    P
    P
    a
    a
    s
    s
    c
    c
    a
    a
    l
    l
    A
    A
    B
    B
    C
    C
    .
    .
    N
    N
    E
    E
    T
    T
    Рекомендовано методическим советом УрФУ
    в качестве учебного пособия для студентов,
    обучающихся по направлениям подготовки
    230400 «Информационные системы и технологии»,
    090900 «Информационная безопасность»
    Екатеринбург
    Издательство Уральского университета
    2014

    УДК 004.43PascalABC.NET(075.8)
    ББК 32.973-018.2я73
    Д64
    Рецензенты:
    Уральский технический институт связи и информатики (филиал) ФТОБУ ВПО «Сибирский государственный университет телекоммуникаций и информатики» (выписка из протокола
    № 1 от 11.09.2012 г. заседания кафедры общепрофессиональных дисциплин технических специальностей, завкафедрой канд. техн. наук, доц. Н. В. Будылдина); д-р пед. наук, проф. Б. Е. Старченко (Уральский государственный педагогический университет)
    Научный редактор – д-р пед. наук, проф. Г. А. Матвеева
    Д64
    Долинер, Л. И.
    Основы программирования в среде PascalABC.NET : учебное пособие /
    Л. И. Долинер. – Екатеринбург : Изд-во Урал. ун-та, 2014. – 128 с.
    ISBN 978-5-7996-1260-3
    Пособие является частью комплекса, предназначенного для обучения основам программирования на языке Object Pascal в среде PascalABC.NET. Комплекс включает, помимо данной книги, методические рекомендации для преподавателя, дополнительный задачник и набор учебных файлов, обеспечивающих полноценный и эффективный процесс обучения основам программирования. Предназначено для студентов, учителей в системе повышения квалификации, преподавателей информатики.
    Рис. 7. Табл. 1.
    УДК 004.43PascalABC.NET(075.8)
    ББК 32.973-018.2я73
    _____________________________________________________________________
    Учебное издание
    Долинер Леонид Исаевич
    Основы программирования в среде PascalABC.NET
    Подписано в печать 11.09.2014. Формат 70×100 1/16. Бумага писчая.
    Плоская печать. Усл. печ. л. 10,32. Уч.-изд. л. 6,6. Тираж 50 экз. Заказ № 1506.
    Издательство Уральского университета
    Редакционно-издательский отдел ИПЦ УрФУ
    620049, Екатеринбург, ул. С. Ковалевской, 5
    Тел.: 8 (343) 375-48-25, 375-46-85, 374-19-41
    E-mail: rio@urfu.ru
    Отпечатано в Издательско-полиграфическом центре УрФУ
    620075, Екатеринбург, ул. Тургенева, 4
    Тел.: 8 (343) 350-56-64, 350-90-13
    Факс: 8 (343) 358-93-06
    E-mail: press-urfu@mail.ru
    ISBN 978-5-7996-1260-3
    © Уральский федеральный университет, 2014

    3
    Оглавление
    ПРЕДИСЛОВИЕ ............................................................................................................ 5
    ЧТО ТАКОЕ «ПРОГРАММИРОВАНИЕ» ................................................................. 8
    ГЛАВА 1. Знакомство со средой PascalABC.NET ................................................... 15
    ГЛАВА 2. Простейшие программы на языке Паскаль ........................................... 21
    ГЛАВА 3. Организация диалога ............................................................................... 27
    ГЛАВА 4. Графика в языке паскаль (первое знакомство) ..................................... 30
    ГЛАВА 5. Операции с целыми и вещественными числами .................................. 35
    ГЛАВА 6. Оператор ветвления .................................................................................. 38
    ГЛАВА 7. Оператор выбора ....................................................................................... 43
    ГЛАВА 8. Цикл с параметром ................................................................................... 46
    ГЛАВА 9*. Рисование забора ................................................................................... 49
    ГЛАВА 10 0
    . Звездное небо и прочие странности .................................................... 53
    ГЛАВА 11. Цикл с параметром: типовые алгоритмы ............................................ 56
    ГЛАВА 12. Проектирование программ и процедуры ............................................. 62
    ГЛАВА 13. Циклы с условием .................................................................................. 69
    ГЛАВА 14. Построение графиков функций ............................................................. 73
    ГЛАВА 15. Графические примитивы. Перья и кисти ............................................. 77
    ГЛАВА 16*. Работа с графическими объектами ..................................................... 81
    ГЛАВА 17*. Событийное программирование.......................................................... 83
    ГЛАВА 18. Основные операции со строковыми данными .................................... 86
    ГЛАВА 19. Использование процедур ....................................................................... 91
    ГЛАВА 20. Работа с массивами: первые шаги ......................................................... 95
    ГЛАВА 21*. Сортировка массивов ......................................................................... 102

    4
    ГЛАВА 22*. Многомерные массивы ..................................................................... 105
    ГЛАВА 23. Подпрограммы-функции ..................................................................... 109
    ГЛАВА 24. Работа с текстовыми файлами: чтение и запись .............................. 113
    ГЛАВА 25. Работа с данными из текстовых файлов ........................................... 119
    ГЛАВА 26. Основы работы с типизированными файлами .................................. 125

    5
    Предисловие
    Программирование сегодня – это бурно развивающаяся отрасль производ- ства программных продуктов. В конце прошлого века общаться с компьютерами можно было лишь с помощью программирования, и поэтому программирование изучали фактически во всех учебных заведениях (в т. ч. в школах и вузах). Вре- мена изменились, общаться с компьютерами можно уже с помощью готовых компьютерных программ, и нужда в массовом обучении программированию вро- де бы отпала. Однако все оказалось не так просто. В современные прикладные пакеты включаются, как правило, дополнительные средства программирования, обеспечивающие расширение возможностей этих пакетов. Например, практиче- ски в любом пакете MS Office есть среда программирования VBA (Visual Basic for
    Applications), обеспечивающая расширение возможностей этого пакета; профес- сиональная работа с системой «1С Предприятие» требует постоянного програм- мирования для настройки на потребности каждой фирмы. Речь уже ведется о но- вом подходе, в рамках которого программирование – это обязательная компонен- та подготовки специалистов, собирающихся профессионально работать в опреде- ленной сфере, в которой предполагается использование IT-технологий.
    Программирование сегодня – это не только и не столько знание языка про- граммирования. Прежде всего это знание технологии программирования, умение
    проектировать и разрабатывать программы и программные комплексы на ос- нове этой технологии, умение строить модели, ставить задачи и иметь представ- ление о коллективной разработке программных продуктов. Все это принято назы- вать культурой программирования.
    В данном пособии вы познакомитесь с языком программирования Паскаль
    (точнее, его разновидности – Object Pascal), c элементами структурного про-
    граммирования (т. е. программирования без использования оператора безусловно- го перехода), с технологией проектирования «сверху вниз», с модульным про-
    граммированием (т. е. с разбиением программы на подпрограммы для удобства отладки и коллективной реализации) и элементами объектно-ориентированного
    программирования.

    6
    Материал пособия необходимо изучать последовательно. В книге предложено два вида материалов: теоретический, который размещен в электронном пособии, и практический, который следует выполнять на компьютере. Для выполнения практических работ необходима среда программирования PascalABC.NET (любой модификации), а также электронная поддержка практических работ, размещенная в папке Examples. Можно, конечно, использовать для обучения и другие среды (Tur- bo Pascal, Borland Pascal, Free Pascal, TNT Pascal и т. п.), однако материал подготов- лен именно для названной среды. Среда бесплатная, и ее можно скачать с http://PascalABC.NET/. И хотя программирование на языке Паскаль изучают тра- диционно в среде Borland Pascal, мы сочли целесообразным воспользоваться сре- дой PascalABC.NET (разумеется, с разрешения авторов среды С. С. Михалковича и М. Э. Абрамяна, доцентов Ростовского государственного университета). Наш выбор был обусловлен следующими причинами:
    1) традиционные Турбо-среды (тот же Borland Pascal) являются DOS- средами, т. е. для работы в них нужно использовать стандарты операционной си- стемы MS DOS, что во времена Windows является, по меньшей мере, анахрониз- мом, поскольку данные навыки вряд ли кому-то пригодятся в будущем;
    2) возможности среды PascalABC.NET, в отличие от других сред, макси- мально приближены к Delphi, что позволяет более естестественно перейти от про- граммирования учебного к программированию визуальному и объектно- ориентированному;
    3) графика PascalABC.NET практически совпадает с графикой Delphi;
    4) среда PascalABC.NET содержит прекрасную и понятную справку на рус- ском языке с множеством примеров;
    5) кроме того, в среду включен компьютерный задачник с возможностью автоматической проверки решений.
    В книге приняты следующие обозначения:
    
    – символ используется для выделения определений или инструкций;
    
    – так помечаются подсказки и важные замечания;
    
    – при встрече с таким символом следует показать преподавателю (кон-

    7 сультанту) результаты выполнения заданий. Если вы работаете само- стоятельно, то пропустите помеченный этим символом текст;
    0
    – данным символом помечены простые разделы и задания. Если для вас они не составляют трудностей, то их можно пропускать. Если какие- либо сомнения есть, лучше выполнить;
    *
    – звездочкой помечены некоторые лабораторные работы, разделы и зада- ния, изучение или выполнения которых представляет определенную трудность для начинающих;
    **
    – двумя звездочками помечены разделы и задания, являющиеся дополни- тельными для начинающих и обязательными для тех, кто планирует использовать данный программный продукт в профессиональной дея- тельности.

    8
    ЧТО ТАКОЕ «ПРОГРАММИРОВАНИЕ»
    1. Что такое «программа» и как ее исполняет компьютер
    Компьютер представляет собой устройство для исполнения программ. «Моз- гом» компьютера является процессор, который призван «понимать» и исполнять эти программы.

    
    Программа– это последовательность предписаний (команд), записанных на языке, понятном исполнителю.
    В нашем случае исполнителем является процессор. А что за язык, который этот процессор понимает? Как известно, компьютер хранит информацию, зако- дированную с помощью двоичных чисел. Программа для компьютера – это обычная информация, поэтому и она хранится в виде набора двоичных чи- сел. Но согласно определению это не простой набор чисел, а именно набор ко- манд, понятных процессору. Сочетание команд, которые понимает процессор, и правил их написания принято называть машинным языком, или языком про- граммирования низкого уровня. Например, предположим, что некий процессор понимает следующие операции:
    00000001 – сложить;
    00000111 – разделить;
    00000100 – переслать из одной ячейки в другую.
    Правило написания команды для современного процессора выглядит сле- дующим образом:
    <код операции> <адрес первого операнда> <адрес второго операнда>.
    Здесь под операндом понимается некоторое значение, с которым произво- дится операция; адрес операнда – это адрес блока памяти, в котором находится операнд.
    В таком случае, например, фрагмент программы, определяющей среднее арифметическое четырех чисел, будет выглядеть следующим образом (см. таб- лицу):

    9
    Пример компьютерной программы в двоичных кодах
    Код операции
    Адрес 1
    Адрес 2
    Комментарии
    00000001 00011000 00011001 Сложить числа, хранящиеся в блоках памяти по адресам 00011000 и 00011001, и поместить результат в блок памяти с адресом 00011001 00000001 00011001 00011011 Сложить полученную сумму из блока памяти
    00011001 и третье число, размещенное в бло- ке памяти 00011011, и поместить результат в блок памяти с адресом 00011011 00000001 00011011 00011110 Сложить полученную сумму из блока памяти
    00011011 и четвертое число, размещенное в блоке памяти 00011110, и поместить ре- зультат в блок памяти с адресом 00011110 00000111 00011110 00111110 Разделить полученную сумму на число, хра- нящееся по адресу 00111110, и поместить по этому же адресу результат
    00000100 00111110 10111000
    Переслать содержимое блока памяти с адре- сом 00111110 в блок памяти с адресом
    10111000
    Разумеется, у реальной программы есть специальный заголовок, по которо- му процессор определяет, что это именно программа, и на практике программы существенно сложнее простейшего примера, приведенного здесь.
    Справедливости ради стоит отметить, что в некоторых редких случаях с по- мощью машинных кодов пишутся программы для специальных устройств (сти- ральные машины, управляемые ракеты и т. п.), в которые встроены относительно слабые процессоры и ограниченная оперативная память, но от которых требует- ся практически мгновенное исполнение команд. Программы, написанные с по- мощью машинных кодов, занимают существенно меньшую память, чем создан- ные с помощью других средств, и, как следствие, быстрее исполняются.

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

    Транслятор (translator) – это программа, предназначенная для перевода
    (трансляции) описания алгоритма с одного формального языка на другой.
    Алгоритм создания программы теперь предусматривает использование шага трансляции (рис. I).
    Текст программы на
    языке
    программиро-
    вания высокого уровня
    Текст программы
    в машинном коде
    Program ex1;
    uses Graph,Graph0;
    var x:integer;
    color: integer;
    begin
    Транслятор
    1000101001010101011
    0101010101010111010
    1000101011110101010
    1011101010101010101
    010101010
    Рис. I. Алгоритм трансляции программы
    Этап превращения программы, написанной на языке высокого уровня, в ма- шинный код реализуется в двух вариантах. В первом случае транслятор берет из файла программу на языке высокого уровня и переводит ее всю целиком в про- грамму на машинном языке, создавая отдельный файл с расширением EXE. Про-

    11 грамму, записанную в такой файл, принято называть исполняемым модулем, а транслятор, который выполняет такой перевод, называют компилятором.
    Во втором случае транслятор берет из файла с программой на языке высоко- го уровня по одному предписанию (команде), транслирует ее в машинный код и передает полученную команду процессору для исполнения. Такой транслятор называют интерпретатором.
    Существуют несколько сотен языков программирования высокого уровня.
    Каждый из них предназначен для решения определенного круга задач, например:
    BASIC и FORTRAN – для вычислений, PROLOG – для создания систем искусст- венного интеллекта, Pascal – для обучения программированию, COBOL – для обработки больших объемов данных, С++ – для профессионального про- граммирования больших приложений и т. п.

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

    Синтаксис языка программирования– это перечень правил записи про- грамм из элементов этого языка.

    Программирование – это технология разработки программ с помощью языков программирования.
    Одним из современных широко распространенных языков программирова- ния является Паскаль. Он был создан на рубеже 1960–70-х годов швейцарским ученым Никлаусом Виртом и первоначально предназначался для обучения про- граммированию. В настоящее время данный язык используется и для професси- ональной разработки малых и средних компьютерных систем.
      1   2   3   4   5   6   7   8   9   10   11


    написать администратору сайта