Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Лекция 1. Основные понятия. Данные. Консольное приложение

Лекция 1. Основные понятия. Данные. Консольное приложение (Воробьева И.А. - Информатика. Язык Паскаль)

PDF-файл Лекция 1. Основные понятия. Данные. Консольное приложение (Воробьева И.А. - Информатика. Язык Паскаль) Информатика (112488): Книга - 2 семестрЛекция 1. Основные понятия. Данные. Консольное приложение (Воробьева И.А. - Информатика. Язык Паскаль) - PDF (112488) - СтудИзба2021-10-04СтудИзба

Описание файла

Файл "Лекция 1. Основные понятия. Данные. Консольное приложение" внутри архива находится в папке "Воробьева И.А. - Информатика. Язык Паскаль". PDF-файл из архива "Воробьева И.А. - Информатика. Язык Паскаль", который расположен в категории "". Всё это находится в предмете "информатика" из 2 семестр, которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст из PDF

1Воробьева И.А. «Информатика. Язык Паскаль»ВВЕДЕНИЕЯзык Паскаль создан швейцарским ученым Никлаусом Виртом примерно к1970-му году. Язык назван в честь французского математика, физика и философаБлеза Паскаля, который создал первую механическую машину, складывающую двачисла. Вирт, представляя язык, в качестве цели его создания указывал построениеязыка, способствующего хорошему стилю программирования, использующемуструктурное программирование и структурированные данные. Еще одинважный разработчик концепции структурного программирования, работавший сВиртом в одну пору – это нидерландский учёный Эдсгер Дейкстра.Паскаль – язык структурного программирования.

Что же это такое.Принципы структурного программированияБазовые принципы таковы: Преимущественное использование базовых алгоритмическихструктур: следование, развилка, цикл→ограниченноеиспользование операторов безусловного перехода, таких какGoto, Break, Continue, Exit. Метод нисходящего проектирования алгоритмов → см. ниже. Использование обозначений, соответствующих содержанию задачии облегчающих понимание программы → все имена сначалаописываются (объявляются), а потом используются.Обратим особое внимание на первый основополагающий пункт.

Историческистановление концепции структурного программирования можно описать тремявехами:классическая теорема Боэма и Джакопини (в 1966 г.) о структурномпрограммированииТеоремаБоэма-Джакопини —положениеструктурногопрограммирования, согласно которому любой исполняемый алгоритмможет быть преобразован к структурированному виду, то естьтакому виду, когда ход его выполнения определяется только припомощи трёх структур управления: следования, развилки и цикла.12Воробьева И.А. «Информатика.

Язык Паскаль»Эдсгер Дейкстра (в 1975 г.) развил серьезную критику относительнооператора безусловного перехода Goto, предложил отказаться от него,ограничившись тремя конструкциями - последовательность, выбор и цикл, исформулировал теорему о структурном программировании Для любой неструктурной программы существует эквивалентнаяей структурная программа. Две программы эквивалентны, если для любых входных данныхрезультаты их работы совпадают (выдают одинаковые выходныеданные, завершаются по одной и той же ошибке временивыполнения или зависают). Структурная программа состоит только из следующихконструкций:− следование (операторы присваивания и вызова процедуры);− ветвление (условный оператор);− повторение (оператор цикла). Для любой (не обязательно осмысленной!) программы соператорами Goto существует эквивалентная ей программа безоператоров Goto.Дональд Кнут (известный американский математик и программист,автор издательских систем TeX и METAFONT), в свою очередь,подверг критике утверждение Дейкстры и продемонстрировалслучаи, в которых оператор безусловного перехода оказывалсяполезным, например, выход из нескольких вложенных циклов.Существуют, как яростные противники оператора Goto, так ипрограммисты, считающие этот оператор полноправной инструкциейязыка.

Лично я, склонна согласиться с Кнутом и считаю следующееутверждение наиболее верным:«Структурное программирование - не самоцель, его основноеназначение - получение хорошей программы. Однако даже в самойхорошей программе операторы перехода требуются, например,при выходе из множества вложенных циклов».23Воробьева И.А. «Информатика. Язык Паскаль»Метод нисходящего проектирования алгоритмовМетод нисходящего проектирования алгоритмов включает следующиепункты: разделение задачи на связанные между собой подзадачи; алгоритм каждой подзадачи имеет один вход и один выход; разбиение на подзадачи отражает логику программы; алгоритм, устанавливающий связи между подзадачами, строится сиспользованием базовых алгоритмических структур; подзадачи автономны - кодируются как подпрограммы,преимущественно использующие локальные переменные.1.

ОСНОВНЫЕ ПОНЯТИЯ1.1. Спецификация1Спецификация – важная часть технической документации, которая содержитнабор требований и параметров к объекту (формальное определение требований кпрограмме, полная постановка задачи: определение исходных данных, формырезультата, исключительных ситуаций, особых реакций и т.п.). При выполнениилабораторных работ, под спецификацией часто понимают объединение этихтребований с отчетом, т.е.

кроме собственно спецификации туда включают:алгоритм, полный код программы или ее фрагмент, таблицу проведенных тестов.Возьмем типичную формулировку задачи, которую надо «решить» припомощи написания программы и рассмотрим, какие требуются уточнения дляполной постановки задачи.Задача 1. Даны n точек. Подсчитать среднее арифметическое тех точек,которые попадут в отрезок [-10; 5].1В общей энциклопедии этот термин означает перечисление подробностей, на которые необходимо обратить особоевнимание.34Воробьева И.А.

«Информатика. Язык Паскаль»Спецификация должна дать ответы на следующие вопросы:В этой задаче мы видим три типа обозначения данныхКаковы допустимыеодновременно: буквенное – «n», словесное «среднеесокращения,арифметическое» и числовое «[-10; 5]».

Уместнопереименования,привести все к единому виду. Число точек – n изменятьобозначения вне будем, так как это общепринятое понятноеформулировкеобозначение. Ведем «говорящее» сокращение Meanзадачи?(the arithmetic mean) для вычисляемого среднегоарифметического. Отрезок также можно обозначитьбуквами: [A; B], где A=-10, B=5. Максимальное значение n влияет на выбор типаКаков диапазон n?переменных (тип данных, переменных, рассмотримподробнее в п.

1.3). В программировании естьразница: придется складывать 10 чисел или 1035. Еслиже придется их перемножать, то влияние n станетгораздо существенней. Если мы допускаем, что n может быть равно нулю,тогда следует учесть и то, что это особая ситуация дляпрограммы, так как нет данных (точек) дляпроведения вычислений.Если речь в задаче об отрезке, то почти наверняка речьКакой тип данных уидет о вещественных числах, хотя это, строго говоря, неточек?обязательно.

Если точки есть вещественные числа, то скакой точностью они заданы, после запятой одинразряд или все десять? Даже если точки будут целые числа – их среднееКакой тип данных уарифметическое обязано иметь вещественный типMean?(например,).Каково его Предельные значения Mean напрямую зависят от n имаксимальное играниц отрезка:. Заметьте,минимальноечто все вычисления усложнятся, а количествозначение?вопросов увеличится, если отрезок будет задан непараметрами-константами,апараметрами-переменными [A; B] (забегая вперед –существенно увеличится и число необходимыхпроверочных тестов).А что, если ни однаточка не попадет взаданный отрезок?Тогда программа столкнется с еще однойособой ситуацией, когда алгоритм не можетотработать «в лоб» без ошибки, так как,пытаясь вычислить Mean, мы попытаемсяподелить на ноль.45Воробьева И.А.

«Информатика. Язык Паскаль»Каким образомзаданы точки? Откудамы их получаем? Естьли гарантия, что точкизаданы верно? Точки могут быть заданы, например, втекстовом файле или их вводят с клавиатуры,генерируют программой случайным образом,вычисляют программой на предыдущихэтапах, – вариантов много. Частоприходитсяпредусматриватьвозможность ошибки ввода, особенно, еслиспособ ввода предполагает участие человека(клавиатура, файл).В результате, мы получаем так называемую уточненную постановку задачи:Даны n целочисленных точек, где.

Подсчитать среднееарифметическое (Mean) тех точек, которые попадут в отрезок [A; B], гдеA=-10, B=5. Число n и значения точек (x,) вводить с клавиатуры.Результат работы программы вывести на экран:1. При нарушении диапазонов n и x вывести сообщение: «Нарушендиапазон входных данных». Завершить работу.2. Если ни одна точка не попадет в заданный отрезок вывестисообщение: «Нет точек на отрезке, величина Mean неподсчитана». Завершить работу.3. Вывести значение Mean = ____, где– этодиапазон и точность результата.Почти всегда начинающий программист использует только третий пункт вкачестве результата работы программы.

Более того, он и программу пишет так,будто первых двух пунктов не существует. Это неверный подход, так как, поизвестному выражению: «Ты суслика видишь? — Нет. — И я нет. А он есть!». Идаже есть определение для описанных ситуаций: Аномальная ситуация – вынужденное прерывание работыпрограммы из-за невозможности реализовать основной алгоритм наполученных данных, когда данные ошибочны (соответствует п. 1),не входят в диапазон разрешенных значений. Альтернативная ситуация – ветвление программы, зависящее отпромежуточного результата работы (соответствует п. 2), например,когда все входные данные верны (точки х из диапазона:),56Воробьева И.А.

«Информатика. Язык Паскаль»но попытка продолжить работу по основному алгоритму приведет кошибке (деление на ноль). Альтернативная ситуация не обязательнодолжна приводить к ошибке, это может быть просто отсутствие среди всехдопустимых объектов тех, которые удовлетворяют условиям дляпродолжения основного вычисления программы. Это, по сути, один извариантов решения задачи, а аномалия – ситуация, когда решение неопределено. Приведем еще пример: «подсчитать число K точек, иззаданных на отрезке [-5; 5] случайным образом n точек, попавших в отрезок[0; 1]». Решение в форме основного будет выглядеть, как: «Число искомыхточек равно <k>», гдеРешениев форме основного иальтернативного будет выглядеть:«Число искомых точек равно» для«Искомых точек на отрезкенет»для1.2. Алгоритм.

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5160
Авторов
на СтудИзбе
439
Средний доход
с одного платного файла
Обучение Подробнее