Содержание
- 2. Пример использования структурного программирования Структу́рное программи́рование — методология разработки программного обеспечения, в основе которой лежит представление
- 3. Пример использования структурного программирования Декомпозиция на три подзадачи: положить x = a и y = b
- 4. Пример использования структурного программирования В исходной постановке задачи только входные данные a и b, мы ввели
- 5. Пример использования структурного программирования 3. -- a>0, b>=0 положить x=a положить y = b -- НОД(a,
- 6. Получение целой части и остатка отделения --x ≥ 0, y > 0 положить q = 0
- 7. Статическая и динамическая структура программы Каждый алгоритм имеет статическую и динамическую структуру. Статическая структура представляется текстом
- 8. Спецификация программы и правила вывода Любой оператор или изменяет состояние вычислений… или анализирует и принимает решение…
- 9. Спецификация программы и правила вывода - P Спецификация программы: S { P} S { Q }
- 10. Спецификация программы и правила вывода Проектирование должно начинаться с определения спецификации {P} S {Q}, которой должна
- 11. Представим блок-схему этого алгоритма как композицию….. x>=0, y>0 x>=0, y> 0 s1 q = 0; r>=0
- 12. x = q*y + r, r >=y S3 r = r – y; s2 q =
- 13. Правила вывода Правила вывода – это схемы рассуждений, позволяющие доказывать свойства программ. Общий вид: H1,H2,…Hn H
- 14. Второе правило консеквенции: P R, {R} S {Q} {P} S {Q} Например: ((x = y *
- 15. Правила вывода для операторов языка программирования
- 16. Правила вывода для структурных операторов Простейшей формой структурирования является создание составных операторов с помощью последовательной композиции
- 17. Правила вывода для составного и условных операторов
- 18. Правила вывода для условных операторов Если мы хотим доказать истинность утверждения {P} if (B) S1; else
- 19. Правила вывода для условных операторов 2. Если B ложно, то будет выполняться оператор S2. Так как
- 20. Правила вывода для условных операторов Сокращенный условный оператор: if ( B ) S; Блок-схема сокращенного условного
- 21. Правила вывода для условных операторов 2. P ^ ¬B Q
- 22. Итерационная композиция, операторы циклов Оператор цикла с предусловием: while (B) S; B – выражение, S –
- 23. Итерационная композиция, операторы циклов Если P справедливо, когда впервые входим в цикл, то P^B будет справедливо,
- 24. Правило вывода для цикла с постусловием: do S while B; A –P S Q ^ B
- 25. Доказательство правильности алгоритма поиска div и mod Представим блок-схему этого алгоритма с учетом его декомпозиции --
- 26. Доказательство правильности алгоритма поиска div и mod x=q*y + r, r>=y S3 r = r –
- 27. Фрагмент программы
- 28. Рассмотрим вначале цикл, представленный блоком s3 B - это (r >= y) , отрицание B –
- 29. Для этого необходимо доказать, что справедливо соотношение над чертой, в нашем случае где s2 – составной
- 30. Теперь используем правило составного оператора и 2-е правило консеквенции получим
- 31. Использовав эти три соотношения и правило консеквенции, получим соотношение для s1. {(x>=0) (y>0)} s1 {(x =
- 32. Осталось доказать спецификацию для составного оператора { s1;s3}
- 33. Мы доказали частичную корректность алгоритма, так как при доказательстве не использовалось условие y>0. Это условие используется
- 34. Доказательство завершаемости алгоритмов Деление целых неотрицательных чисел. ----------------------------------------- {x >= 0, y > 0} q =
- 35. Доказательство завершаемости алгоритмов Используя условие y > 0, доказали завершаемость алгоритма, Сочетание доказательства частичной корректности алгоритма,
- 36. Умножение двух положительных целых чисел x и y Алгоритм, использующий только операции сложения и вычитания, может
- 37. Соотношения в точках B,C и D отражают суть алгоритма: z используется для накопления суммы, u определяет
- 38. Применяем правила вывода для доказательства правильности алгоритма: Из исходных условий можно записать: ((x>0) ^ (y>0)) ((x*y
- 39. Используем правило вывода для оператора цикла с постусловием {P} S {Q}, Q ^ B P {P}
- 40. Из постусловия этого утверждения следует ((z + u * y = x * y) ^ (u≥0)
- 42. Скачать презентацию







































WB Транзит
Электронная подпись PayControl
Аппаратное и программное обеспечение ПК. Лекция №5
Своя игра. Логика
Администрирование информационных систем. Администрирование БД
Тип данных. Структура и коллекции. Visual Studio c#
Информационные технологии в менеджменте
Шартты оператор
Лабораторная работа: Описание класса
Программирование в виде релейно-контактных схем. МПСвЭПиТК
Тіл сөйлеген сайын жетіледі, жазған сайын қалыптасады. Тілдің тынысы сөйлеген кезде ғана ашылады
Разработка программного комплекса для создания печатных полутоновых защитных элементов для маркировки продукции
Software engineering
E-Liibrary и РИНЦ. Новые вызовы научному сообществу в связи с образовательными реформами
Глобальная программа экономии бюджета Карта PRIZM c кэшбэком 20-50%
Компьютерные игры в культурном контексте: от классического понимания до постмодерна
Faol supervayzerlarini e’tirof qilish dasturi
Федеральный фонд данных ДЗЗ из космоса – порядок ведения и эксплуатации
Электронная информационно-образовательная среда. ФГБОУ ВО Шадринский государственный педагогический университет
Shriv ComMedia Solution Services IOT services embedded programming & Research remote infrastructure management services
Вводное обучение по Битрикс 24 для LeadGram
Решение логических задач средствами алгебры логики
Интерфаол технологиялар. Таҳлил қиладиган технологиялар
Метод нечіткого оцінювання впливу обслуговуючого персоналу на якість функціонування інформаційної системи
Компьютерные программы
Анализ группы джедоистов
ТЗ по сайту на фриланс
Массивы. Описание массивов