SlideShare une entreprise Scribd logo
1  sur  13
   	Конвертор блок-схем
Список аббревиатур: HDD – Hard disc drive; ЖЦ – Жизненный цикл; ОЗУ – Оперативное запоминающее устройство; ОС – Операционная система; ПП - Программный продукт; ПО – Программное обеспечение; СП -  Среда программирования; ЭВМ – Электронно – вычислительная машина
Цель: 	Автоматизация трансляции алгоритмов в программный код на языке Pascal. Задачи:  1. Описание предметной области;       2. Определение жизненного цикла (ПП);   3. Создание конструктора алгоритмов; 4. Реализация распознавания блоков алгоритма;       5. Трансляция алгоритма в код (поблочно);       6. Выявление типов переменных;       7. Составление исходного кода на языке Pascal; 8. Сохранение исходного кода в *.PAS.
Функции ПП: Трансляция алгоритмов в исходный код на языке Pascal; Сохранение исходного кода на языке Pascal в файл типа *.PAS
Минимальные аппаратные требования: Процессор – 600 MHz ОЗУ – 32 Mb  HDD – 64 Mb  Видеоадаптер –  EGA/VGA Манипулятор – мышь
Минимальные программные требования:	 ОС – Windows 95/98/NT/XP/Vista/Seven
Конструктор алгоритмов: Конструктор блок – схем реализует построение блок схем на основе блоков: Начало/конец; Блок Ввода/вывода; Блок подпрограмм; Блок операторов; Блок условий; Блок циклов (для цикла со счетчиком). Данные блоки предоставлены на рис. 1. Рис. 1. Конструктор алгоритмов
Пример сложения двух простых              чисел
Трансляция алгоритма: 	Создание блоков: 	Трансляция блока условия:  for i:=1 to 100 do      begin pics[i] := TImage.Create(self); pics[i].Parent := Form2.ScrollBox1; pics[i].Width := 150; pics[i].Height := 50; pics[i].OnClick := pic1Click; pics[i].Transparent:=true; pics[i].visible:=false; mems[i] := Tmemo.Create(self); mems[i].Parent:=Form2.ScrollBox1; mems[i].Width:=105; mems[i].Height:=40; mems[i].visible:=false;       end;  if pics[i].tag=6 then begin       s:=mems[i].lines.GetText;       memo1.Lines.add('if '+s+' then'+' begin');       flag:=true; flagb:=true;    end;
Процедура сохранения кода:
Присвоение идентификатора рисунка к переменной:к переменной:
Присвоение рисунку номера:  if path='blnk.bmp' then pics[i].Tag:=1;   if path='blBo.bmp' then pics[i].Tag:=2;   if path='blck.bmp' then pics[i].Tag:=3;   if path='blop.bmp' then pics[i].Tag:=4;   if path='blpo.bmp' then pics[i].Tag:=5;   if path='blys.bmp' then pics[i].Tag:=6;   if path='blvi.bmp' then pics[i].Tag:=7;
Вывод Использование данного ПП сокращает время создания какой-то программы на языке Pascal; Упрощает процедуры создания программ;

Contenu connexe

En vedette

Tobacco and lung disease
Tobacco and lung diseaseTobacco and lung disease
Tobacco and lung diseasewordnerd66
 
Контент ориентированное программирование
Контент ориентированное программированиеКонтент ориентированное программирование
Контент ориентированное программированиеksmster
 
Разработка_метода_отображения_укладки_генеральных_грузов_в_грузовых_помещения...
Разработка_метода_отображения_укладки_генеральных_грузов_в_грузовых_помещения...Разработка_метода_отображения_укладки_генеральных_грузов_в_грузовых_помещения...
Разработка_метода_отображения_укладки_генеральных_грузов_в_грузовых_помещения...Oleksii Chepok
 
[JAM 1.1] Clean Code (Paul Malikov)
[JAM 1.1] Clean Code (Paul Malikov)[JAM 1.1] Clean Code (Paul Malikov)
[JAM 1.1] Clean Code (Paul Malikov)Evgeny Kaziak
 

En vedette (6)

Tobacco and lung disease
Tobacco and lung diseaseTobacco and lung disease
Tobacco and lung disease
 
Контент ориентированное программирование
Контент ориентированное программированиеКонтент ориентированное программирование
Контент ориентированное программирование
 
Diat 2012
Diat 2012Diat 2012
Diat 2012
 
Разработка_метода_отображения_укладки_генеральных_грузов_в_грузовых_помещения...
Разработка_метода_отображения_укладки_генеральных_грузов_в_грузовых_помещения...Разработка_метода_отображения_укладки_генеральных_грузов_в_грузовых_помещения...
Разработка_метода_отображения_укладки_генеральных_грузов_в_грузовых_помещения...
 
OO Design with C++: 0. Intro
OO Design with C++: 0. IntroOO Design with C++: 0. Intro
OO Design with C++: 0. Intro
 
[JAM 1.1] Clean Code (Paul Malikov)
[JAM 1.1] Clean Code (Paul Malikov)[JAM 1.1] Clean Code (Paul Malikov)
[JAM 1.1] Clean Code (Paul Malikov)
 

Similaire à Convertor

11 встреча — Введение в GPGPU (А. Свириденков)
11 встреча — Введение в GPGPU (А. Свириденков)11 встреча — Введение в GPGPU (А. Свириденков)
11 встреча — Введение в GPGPU (А. Свириденков)Smolensk Computer Science Club
 
Использование шаблонов и RTTI для конфигурации симулятора флеш-накопителя - Г...
Использование шаблонов и RTTI для конфигурации симулятора флеш-накопителя - Г...Использование шаблонов и RTTI для конфигурации симулятора флеш-накопителя - Г...
Использование шаблонов и RTTI для конфигурации симулятора флеш-накопителя - Г...Yandex
 
Статический анализ Си++ кода
Статический анализ Си++ кодаСтатический анализ Си++ кода
Статический анализ Си++ кодаTatyanazaxarova
 
ADD 2011: Статический анализ Си++ кода
ADD 2011: Статический анализ Си++ кодаADD 2011: Статический анализ Си++ кода
ADD 2011: Статический анализ Си++ кодаAndrey Karpov
 
Некриптографическое исследование носителей православной криптографии
Некриптографическое исследование носителей  православной криптографииНекриптографическое исследование носителей  православной криптографии
Некриптографическое исследование носителей православной криптографииSergey Soldatov
 
Александр Коротин. Безопасность систем управления турбинами в электроэнергетике
Александр Коротин. Безопасность систем управления турбинами в электроэнергетикеАлександр Коротин. Безопасность систем управления турбинами в электроэнергетике
Александр Коротин. Безопасность систем управления турбинами в электроэнергетикеKaspersky
 
КРИ 2010. Разработка технологической платформы в условиях временного прессинга
КРИ 2010. Разработка технологической платформы в условиях временного прессингаКРИ 2010. Разработка технологической платформы в условиях временного прессинга
КРИ 2010. Разработка технологической платформы в условиях временного прессингаKirill Lebedev
 
Разработка на блокчейн Голос | Ерлан Шиндаулетов
Разработка на блокчейн Голос | Ерлан ШиндаулетовРазработка на блокчейн Голос | Ерлан Шиндаулетов
Разработка на блокчейн Голос | Ерлан ШиндаулетовCyber Fund
 
static - defcon russia 20
static  - defcon russia 20static  - defcon russia 20
static - defcon russia 20DefconRussia
 
Суперсилы Chrome DevTools — Роман Сальников, 2ГИС
Суперсилы Chrome DevTools — Роман Сальников, 2ГИССуперсилы Chrome DevTools — Роман Сальников, 2ГИС
Суперсилы Chrome DevTools — Роман Сальников, 2ГИСYandex
 
Методики и инструменты для самостоятельного решения проблем в сети
Методики и инструменты для самостоятельного решения проблем в сетиМетодики и инструменты для самостоятельного решения проблем в сети
Методики и инструменты для самостоятельного решения проблем в сетиCisco Russia
 
Доклад в Mail.ru 01.11.12
Доклад в Mail.ru 01.11.12Доклад в Mail.ru 01.11.12
Доклад в Mail.ru 01.11.12Alex Tutubalin
 
Zero Downtime PHP Deployment with Envoyer And Forge
Zero Downtime PHP Deployment with Envoyer And ForgeZero Downtime PHP Deployment with Envoyer And Forge
Zero Downtime PHP Deployment with Envoyer And ForgeYehor Herasymchuk
 
Основы и применение статического анализа кода при разработке лекция 1
Основы и применение статического анализа кода при разработке лекция 1Основы и применение статического анализа кода при разработке лекция 1
Основы и применение статического анализа кода при разработке лекция 1m2rus
 
C++ весна 2014 лекция 2
C++ весна 2014 лекция 2C++ весна 2014 лекция 2
C++ весна 2014 лекция 2Technopark
 
#MBLTdev: Знакомство с codesign (e-Legion)
#MBLTdev: Знакомство с codesign (e-Legion)#MBLTdev: Знакомство с codesign (e-Legion)
#MBLTdev: Знакомство с codesign (e-Legion)e-Legion
 
Компиляция скриптов PHP (Алексей Романенко)
Компиляция скриптов PHP (Алексей Романенко)Компиляция скриптов PHP (Алексей Романенко)
Компиляция скриптов PHP (Алексей Романенко)Ontico
 
Вадим Макишвили "Вёрстка в IntelliJIDEA"
Вадим Макишвили "Вёрстка в IntelliJIDEA"Вадим Макишвили "Вёрстка в IntelliJIDEA"
Вадим Макишвили "Вёрстка в IntelliJIDEA"Yandex
 
«Статический анализ: гордость и предубеждения», Алексей Кузьменко, аналитик И...
«Статический анализ: гордость и предубеждения», Алексей Кузьменко, аналитик И...«Статический анализ: гордость и предубеждения», Алексей Кузьменко, аналитик И...
«Статический анализ: гордость и предубеждения», Алексей Кузьменко, аналитик И...Mail.ru Group
 

Similaire à Convertor (20)

11 встреча — Введение в GPGPU (А. Свириденков)
11 встреча — Введение в GPGPU (А. Свириденков)11 встреча — Введение в GPGPU (А. Свириденков)
11 встреча — Введение в GPGPU (А. Свириденков)
 
введение в Gpu
введение в Gpuвведение в Gpu
введение в Gpu
 
Использование шаблонов и RTTI для конфигурации симулятора флеш-накопителя - Г...
Использование шаблонов и RTTI для конфигурации симулятора флеш-накопителя - Г...Использование шаблонов и RTTI для конфигурации симулятора флеш-накопителя - Г...
Использование шаблонов и RTTI для конфигурации симулятора флеш-накопителя - Г...
 
Статический анализ Си++ кода
Статический анализ Си++ кодаСтатический анализ Си++ кода
Статический анализ Си++ кода
 
ADD 2011: Статический анализ Си++ кода
ADD 2011: Статический анализ Си++ кодаADD 2011: Статический анализ Си++ кода
ADD 2011: Статический анализ Си++ кода
 
Некриптографическое исследование носителей православной криптографии
Некриптографическое исследование носителей  православной криптографииНекриптографическое исследование носителей  православной криптографии
Некриптографическое исследование носителей православной криптографии
 
Александр Коротин. Безопасность систем управления турбинами в электроэнергетике
Александр Коротин. Безопасность систем управления турбинами в электроэнергетикеАлександр Коротин. Безопасность систем управления турбинами в электроэнергетике
Александр Коротин. Безопасность систем управления турбинами в электроэнергетике
 
КРИ 2010. Разработка технологической платформы в условиях временного прессинга
КРИ 2010. Разработка технологической платформы в условиях временного прессингаКРИ 2010. Разработка технологической платформы в условиях временного прессинга
КРИ 2010. Разработка технологической платформы в условиях временного прессинга
 
Разработка на блокчейн Голос | Ерлан Шиндаулетов
Разработка на блокчейн Голос | Ерлан ШиндаулетовРазработка на блокчейн Голос | Ерлан Шиндаулетов
Разработка на блокчейн Голос | Ерлан Шиндаулетов
 
static - defcon russia 20
static  - defcon russia 20static  - defcon russia 20
static - defcon russia 20
 
Суперсилы Chrome DevTools — Роман Сальников, 2ГИС
Суперсилы Chrome DevTools — Роман Сальников, 2ГИССуперсилы Chrome DevTools — Роман Сальников, 2ГИС
Суперсилы Chrome DevTools — Роман Сальников, 2ГИС
 
Методики и инструменты для самостоятельного решения проблем в сети
Методики и инструменты для самостоятельного решения проблем в сетиМетодики и инструменты для самостоятельного решения проблем в сети
Методики и инструменты для самостоятельного решения проблем в сети
 
Доклад в Mail.ru 01.11.12
Доклад в Mail.ru 01.11.12Доклад в Mail.ru 01.11.12
Доклад в Mail.ru 01.11.12
 
Zero Downtime PHP Deployment with Envoyer And Forge
Zero Downtime PHP Deployment with Envoyer And ForgeZero Downtime PHP Deployment with Envoyer And Forge
Zero Downtime PHP Deployment with Envoyer And Forge
 
Основы и применение статического анализа кода при разработке лекция 1
Основы и применение статического анализа кода при разработке лекция 1Основы и применение статического анализа кода при разработке лекция 1
Основы и применение статического анализа кода при разработке лекция 1
 
C++ весна 2014 лекция 2
C++ весна 2014 лекция 2C++ весна 2014 лекция 2
C++ весна 2014 лекция 2
 
#MBLTdev: Знакомство с codesign (e-Legion)
#MBLTdev: Знакомство с codesign (e-Legion)#MBLTdev: Знакомство с codesign (e-Legion)
#MBLTdev: Знакомство с codesign (e-Legion)
 
Компиляция скриптов PHP (Алексей Романенко)
Компиляция скриптов PHP (Алексей Романенко)Компиляция скриптов PHP (Алексей Романенко)
Компиляция скриптов PHP (Алексей Романенко)
 
Вадим Макишвили "Вёрстка в IntelliJIDEA"
Вадим Макишвили "Вёрстка в IntelliJIDEA"Вадим Макишвили "Вёрстка в IntelliJIDEA"
Вадим Макишвили "Вёрстка в IntelliJIDEA"
 
«Статический анализ: гордость и предубеждения», Алексей Кузьменко, аналитик И...
«Статический анализ: гордость и предубеждения», Алексей Кузьменко, аналитик И...«Статический анализ: гордость и предубеждения», Алексей Кузьменко, аналитик И...
«Статический анализ: гордость и предубеждения», Алексей Кузьменко, аналитик И...
 

Plus de aaa

School 2010
School 2010School 2010
School 2010aaa
 
Uniq page
Uniq pageUniq page
Uniq pageaaa
 
Fiz lab
Fiz labFiz lab
Fiz labaaa
 
Systems
SystemsSystems
Systemsaaa
 
Site forclick
Site forclickSite forclick
Site forclickaaa
 
Mach graph
Mach graphMach graph
Mach graphaaa
 
Ai lab
Ai labAi lab
Ai labaaa
 

Plus de aaa (7)

School 2010
School 2010School 2010
School 2010
 
Uniq page
Uniq pageUniq page
Uniq page
 
Fiz lab
Fiz labFiz lab
Fiz lab
 
Systems
SystemsSystems
Systems
 
Site forclick
Site forclickSite forclick
Site forclick
 
Mach graph
Mach graphMach graph
Mach graph
 
Ai lab
Ai labAi lab
Ai lab
 

Convertor

  • 1. Конвертор блок-схем
  • 2. Список аббревиатур: HDD – Hard disc drive; ЖЦ – Жизненный цикл; ОЗУ – Оперативное запоминающее устройство; ОС – Операционная система; ПП - Программный продукт; ПО – Программное обеспечение; СП - Среда программирования; ЭВМ – Электронно – вычислительная машина
  • 3. Цель: Автоматизация трансляции алгоритмов в программный код на языке Pascal. Задачи: 1. Описание предметной области; 2. Определение жизненного цикла (ПП); 3. Создание конструктора алгоритмов; 4. Реализация распознавания блоков алгоритма; 5. Трансляция алгоритма в код (поблочно); 6. Выявление типов переменных; 7. Составление исходного кода на языке Pascal; 8. Сохранение исходного кода в *.PAS.
  • 4. Функции ПП: Трансляция алгоритмов в исходный код на языке Pascal; Сохранение исходного кода на языке Pascal в файл типа *.PAS
  • 5. Минимальные аппаратные требования: Процессор – 600 MHz ОЗУ – 32 Mb HDD – 64 Mb Видеоадаптер – EGA/VGA Манипулятор – мышь
  • 7. Конструктор алгоритмов: Конструктор блок – схем реализует построение блок схем на основе блоков: Начало/конец; Блок Ввода/вывода; Блок подпрограмм; Блок операторов; Блок условий; Блок циклов (для цикла со счетчиком). Данные блоки предоставлены на рис. 1. Рис. 1. Конструктор алгоритмов
  • 8. Пример сложения двух простых чисел
  • 9. Трансляция алгоритма: Создание блоков: Трансляция блока условия: for i:=1 to 100 do begin pics[i] := TImage.Create(self); pics[i].Parent := Form2.ScrollBox1; pics[i].Width := 150; pics[i].Height := 50; pics[i].OnClick := pic1Click; pics[i].Transparent:=true; pics[i].visible:=false; mems[i] := Tmemo.Create(self); mems[i].Parent:=Form2.ScrollBox1; mems[i].Width:=105; mems[i].Height:=40; mems[i].visible:=false; end; if pics[i].tag=6 then begin s:=mems[i].lines.GetText; memo1.Lines.add('if '+s+' then'+' begin'); flag:=true; flagb:=true; end;
  • 11. Присвоение идентификатора рисунка к переменной:к переменной:
  • 12. Присвоение рисунку номера: if path='blnk.bmp' then pics[i].Tag:=1; if path='blBo.bmp' then pics[i].Tag:=2; if path='blck.bmp' then pics[i].Tag:=3; if path='blop.bmp' then pics[i].Tag:=4; if path='blpo.bmp' then pics[i].Tag:=5; if path='blys.bmp' then pics[i].Tag:=6; if path='blvi.bmp' then pics[i].Tag:=7;
  • 13. Вывод Использование данного ПП сокращает время создания какой-то программы на языке Pascal; Упрощает процедуры создания программ;