Содержание
- 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. Скачать презентацию







































Презентация на тему Мониторы
Текстовый редактор word. 9-10 класс
Программирование линейных алгоритмов. Начала программирования
Весёлый тест по информатике
Освоение HTML, CSS, JS (09)
Користувальницькі об'єкти. Лекция 31
Принципы обработки информации компьютером. Логические основы работы компьютера
ИКТ на уроках технологии
Программист - это
Локальные компьютерные сети (интерактивный плакат)
Propaganda y publicidad
Создание таблиц баз данных. Задание
Netiqueta
Создание и управление рабочей группой проекта
Выпускная работа Разработка системы контроля и учета работ по содержанию дорог и объектов коммунального хозяйства...
Автоматизированные системы бронирования
Компьютерная графика
Работа с объектами Adobe Illustrator
Komanda FOR organizācija ciklisko izpildes citas komandas rezultāti, saraksti, un virknes teksta failus
HR portal регистрация сотрудника
Шифрование документа
Трон — многопользовательская аркадная игра, основанная на одноименном фильме 1982 года
Языки программирования (python)
Бэкапы, бэкапы и еще раз бэкапы. Лекция 2
Информация о переподключении к веб-сервису
Информатика и её история
Введение в бенчмаркинг
Носители информации. Перфокарты