Студопедия

Главная страница Случайная лекция

Порталы:

БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика






ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ

Читайте также:
  1. I. Основные принципы и идеи философии эпохи Просвещения.
  2. IFRS 13 «Оценка по справедливой стоимости»: сфера применения стандарта, методы определения справедливой стоимости.
  3. II. ОСНОВНЫЕ ФАКТОРЫ РАДИАЦИОННОЙ ОПАСНОСТИ И МЕДИЦИНСКИЕ ПОСЛЕДСТВИЯ ОТ ИХ ВОЗДЕЙСТВИЯ НА ОРГАНИЗМ.
  4. II. Основы определения страхового тарифа.
  5. III. Основные политические идеологии современности.
  6. IV.5. Основные тенденции развития позднефеодальной ренты (вторая половина XVII—XVIII в.)
  7. V. АКУСТИЧЕСКИЕ СВОЙСТВА ГОРНЫХ ПОРОД И МАССИВОВ. ОСНОВНЫЕ ФАКТОРЫ, ВЛИЯЮЩИЕ НА АКУСТИЧЕСКИЕ СВОЙСТВА ГОРНЫХ ПОРОД
  8. V6. ОСНОВНЫЕ СЕМАНТИКО-СТИЛЕВЫЕ ОСОБЕННОСТИ ХУДОЖЕСТВЕННОЙ ЛИТЕРАТУРЫ. ОБРАЗ АВТОРА
  9. Анализ технологичности изделия и деталей. Основные показатели.
  10. Аналитический способ определения площадей земельных участков

 

Говорят, что программирование – это искусство получения ответов от машины, и если мы решили применить компьютер, нам предстоит пройти основных три этапа:

1. Ясно и точно установить, что же должно быть сделано

2. Определить точно определенную последовательность действий, ведущую к желаемому результату, то есть предложить алгоритм.

3. Выразить алгоритм в виде понятном для машины.

Первый шаг носит название – системный анализ. Второй этап – это этап конструирования программы. Третий этап – собственно «программирование».

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

Но перед началом поговорим вот о чем - Очень много недоразумений происходит только по тому, что люди не поняли друг друга. Они не понимают друг друга по двум причинам:

а) они говорят об одном и том же, используя разные слова;

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

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

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

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

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

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

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

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

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

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

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

В течение своей жизни человек выполняет различные действия: ест, спит, ходит в школу, учится в институте, ходит на работу, женится, выращивает детей, поет песни, смотрит телевизор, читает книги или просто отдыхает. Этот список можно успешно продолжить дальше. Очень часто, производя эти действия, мы как бы не задумываемся, делаем их подсознательно. На самом деле, какое бы действие мы не производили, всегда перед его выполнением наш мозг анализирует ситуацию, решает, что же должно быть сделано, определяет определенную последовательность действий, ведущую к желаемому результату, и выражает эти инструкции в виде программы, которую мы и выполняем. Здесь мы исполняем и роль системного аналитика, и роль разработчика алгоритма, и роль программиста, и роль процессора (исполнителя). И эту роль мы исполняем ежесекундно в течение всей своей жизни. Не правда ли потрясающе? Вспомним знаменитого персонажа пьесы Жан-Батиста. Мольера «Мещанин во дворянстве» Журдена:



Г-н Журден. А когда мы разговариваем, это что же такое будет?

Учитель философии. Проза.

Г-н Журден. Что? Когда я говорю: "Николь, принеси мне туфли и ночной колпак", это проза?

Учитель философии. Да, сударь.

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

 

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

 

 

Задание

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

2. Опишите словесно алгоритм выполнения домашнего задания.

3. Опишите словесно алгоритм приготовления вашего любимого блюда.

4. Вам поручили выучить стихотворение, словесно опишите алгоритм.

 

 

1.2 ТРИ ОСНОВНЫХ ДЕЙСТВИЯ

 

1.2.1 Последовательность

 

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

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

Посмотрите, как Учитель философии учит уже знакомого нам персонажа пьесы Ж-. Б. Мольера «Мещанин во дворянстве» Журдена произношению звука У:

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

 

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

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

 

Последовательность действий - Для того чтобы произвести действие А, необходимо выполнить последовательно поддействия А1, А2, …,Аn.

 

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

 

    А    
                 
А1   А2   А3 . . . Аn

 

рис 1.1

 

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

 

                     
    А1   А2   А3   Аn    
             
                     

 

рис 1.2

 

Пунктирная линия обрамляющая поддействия А1, А2, А3,..., Аn указывает на то, что эти поддействия необходимо выполнить для произведения основного действия.

Приведем еще одно представление последовательности действий:

А1; А2; А3;... ; Аn

В данном случае знак ";" равносилен стрелкам на рисунке 1.2 и означает "следование". Запомните этот знак, в дальнейшем при написании программ на языке Pascal мы будем использовать его именно в этом смысле.

 

Задание

1. Приведите пример последовательных действий.

2. Опишите словесно последовательность действий

 

 

1.2.2 Выбор

 

Вы вошли в класс и сели за определенную парту. Во время перемены кто-то решил побегать на улице, а кто-то решил сходить в школьную столовую. Если Вы собираетесь на улицу, то одеваетесь исходя из погодных условий. С кем-то Вы дружите, а с кем-то нет. После окончания школы Вы будете решать, какую специальность выбрать. Любой человек в процессе своей жизни постоянно стоит перед выбором. Что он выберет, зависит от определенных условий. Иногда мы это даже не осознаем. Попробуйте ответить на вопрос: «почему поднимаясь по лестнице, я наступил на первую ступеньку правой ногой?».

В отличие от последовательности для получения результата можно выбрать только одну из альтернатив. Например: Вы не можете сидеть сразу за несколькими партами одновременно. Обратимся снова к уроку, который проводил Учитель философии с Журденом

Учитель философии. Конечно. Вы хотите написать ей стихи?

Г-н Журден. Нет, нет, только не стихи.

Учитель философии. Вы предпочитаете прозу?

Г-н Журден. Нет, я не хочу ни прозы, ни стихов.

Учитель философии. Так нельзя: или то, или другое.

Г-н Журден. Почему?

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

Г-н Журден. Не иначе, как прозой или стихами?

Учитель философии. Не иначе, сударь. Все, что не проза, то стихи, а что не стихи, то проза.

 

Выбор - Для того чтобы произвести действие А, необходимо выполнить либо поддействие А1, либо поддействие А2, …, либо поддействие Аn.

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

 

    А    
                 
А1   А2   А3 . . . Аn

 

Рис 1.3.

 

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

а) выбор из двух действий при выполнении или невыполнении начального условия. Например: Если идет дождь, то сижу дома иначе гуляю на улице. Здесь "идет дождь" - условие, от результата которого зависят мои действия. Если условие выполняется, иначе говорят что условие ИСТИННО, то выполняем поддействие "сижу дома". Если условие не выполняется, иначе говорят что условие ЛОЖНО, то выполняется поддействие "гуляю на улице". Графически это можно представить следующим образом:

 

 

                   
                   
      ?      
                   
    А1   А2    
                   
                   
                   
                   
                       

 

Рис 1.4

 

Если при невыполнении исходного условия мы ничего не делаем, то приходим ко второму виду выбора.

б) Выполнение одного действия при выполнении исходного условия.

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

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

 

                   
                   
      ?      
                   
    А1            
                   
                   
                   
                   
                           

 

Рис 1.5

 

Как видим второй вид выбора, является частным случаем первого вида выбора. Однако, количество вариантов выбора не всегда один или два. Например: Если температура воздуха выше 30 СО мы говорим - жарко, если в пределах от 30 СО до 15 СО - тепло, если от 15 СО до 5 СО - прохладно, а если ниже 5 СО, то говорим, что холодно. В этом случае мы имеем дело с выбором третьего вида.

в) выбор из многих возможностей.

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

 

         
         
      Температура ?      
                 
  Жарко   Тепло   Прохладно . Холодно .
                 
                 

 

Рис 1.5

 

Результатом будет какое-то одно из определений или жарко, или тепло, или прохладно, или холодно.

 

Задание

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

2. Приведите пример выбора с одной альтернативой.

3. Приведите пример выбора из двух условий.

 

 

1.2.3 Цикл

 

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

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

Графически используя блок-схему это можно представить следующим образом:

A
   
N A1

Рис 1.6

 

Здесь число N показывает количество выполнений поддействия А1 для выполнения основного действия А. Если заранее это количество повторений известно, то говорят, что мы имеем дело с циклом с фиксированным количеством действий. Исторически, как и для видов действий выбора, принято, разделять циклические действия, которые мы выполняем на три основных вида:

А) Цикл с фиксированным количеством действий

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

б) Цикл с предусловием.

К этой группе относят циклические действия, в которых нам заранее неизвестно количество повторений и которые перед выполнением действия требуют проверки выполнения какого-либо условия. Например, Вы собираетесь поесть суп. Вам заранее не известно сколько раз нужно зачерпнуть ложкой из тарелки суп, что бы полностью его съесть. Вы будете брать ложкой суп до тех пор, пока тарелка не опустеет. Но если тарелка была изначально пуста, сможете ли Вы взять суп ложкой, хоть один раз? Я думаю, нет. Отсюда следует интересная особенность данного вида цикла. Он может выполняться ноль раз!

 

                   
                   
                   
      ?      
                   
      А1            
                   
                   
                   
                   
                   
                             

 

Рис 1.7

 

в) Цикл с пост условием

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

 

                   
                   
                   
      А1      
                   
      ?        
                   
                   
                   
                   
                   
                         

 

Рис 1.8

 

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

Основное отличие цикла с пред условием от цикла с постусловием, в том, что в первом виде цикла действие выполняется, когда УСЛОВИЕ=ИСТИНА, а во втором виде цикла если УСЛОВИЕ=ИСТИНА выполнение действий прекращается.

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

 

Задание

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

2. Приведите пример цикла с предусловием.

3. Приведите пример цикла с постусловием.

4. В чем основное отличие цикла с предусловием, от цикла с постусловием.

5. Какое минимальное количество может выполняться цикл с предусловием.

6. Какое минимальное количество может выполняться цикл с постусловием.


<== предыдущая страница | следующая страница ==>
Введение. Дорогие ребята, мы с Вами приступаем к изучению основ программирования на языке Pascal | СТРУКТУРНЫЙ ПОДХОД К РЕШЕНИЮ ЗАДАЧ

Дата добавления: 2014-11-24; просмотров: 308; Нарушение авторских прав


lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.007 сек.