Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
_Katya_
Сообщений: n/a
#1

ООП. Полиморфизм - C++

30.05.2013, 11:28. Просмотров 799. Ответов 6
Метки нет (Все метки)

Мальчики, учусь на МехМате. Для сдачи зачёта по ООП необходимо написать последнюю программу:
Задание: полиморфизм

Указание: во всех задачах ввод исходных данных необходимо производить из текстовых файлов. Ошибки ввода и неправильного формата входных данных необходимо обрабатывать при помощи исключений.

Программа на языке логического программирования состоит из следующих конструкций: 1. Факт, утверждающий истинность терма с именем x. 2. Правило, утверждающее истинность терма с именем x, если истинны термы y1, y2, ... 3. Операция ввода, запрашивающая истинность заданного терма x у пользователя. Все правила для одного терма x объединены дизъюнкицией и применяются в порядке их появления в программе. Необходимо реализовать машину вывода, проверяющую истинность заданного терма x или обнаруживающую зацикливание в результате применения заданного набора конструкций. В процессе доказательства необходимо выводить информацию о применяемых конструкциях.

Необходимо использовать полиморфизм, базовый класс, от него 3 производных класса(факт, правило, ввод), и виртуальные функции с их применением в зависимости от поступающих данных.

Всё остальные задачи сделала, а здесь даже не знаю как подступиться к этому заданию, мне бы хоть идею, примерное описание как это должно выглядеть. А если у кого есть время и желание и кто - нибудь напишет хоть примерный код, буду безмерно благодарна)))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.05.2013, 11:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос ООП. Полиморфизм (C++):

ООП Полиморфизм Наследование - C++
У меня есть базовый класс и 2 производных от него класса... Как сделать, чтобы в программе я мог сделать такое обьявление: Force fc;...

ООП + полиморфизм = wtf? - C++
Есть: Класс A - отец Класс Б - дочерний Класс Ц - дочерный, наследуеться от А(сестра Б) Есть массив типа А, с названием Mass. ...

Полиморфизм инкапсуляция и наследование(ООП) - C++
Не как не могу понять зачем нужен Полиморфизм и инкапсуляция и их определение может вы подскажите, наследования я знаю

Подкиньте практику по ООП + полиморфизм + шаблоны пожалуйста. - C++
Здравствуйте форумчане. Хотел бы попросить подбросить практику по таким темам: ООП - полифорфизм + Тэмплэты. Ну и если можно, что нибудь...

ООП в С++ (наследование, инкапсуляция, полиморфизм, перегрузка операторов): что читать? - C++
Нужно освежить, подзабылось. Были у меня институцкие методички доцента Шеховцова. Хороша вещь, но потерялись. Нужны либо набор...

Полиморфизм c++ - C++
Построить массив из указателей (базового типа) на объекты обоих классов. Выбрать объекты производного класса, отсортировать их и сложить...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
30.05.2013, 12:52 #2
Цитата Сообщение от _Katya_ Посмотреть сообщение
Программа на языке логического программирования
Что-то ты путаешь, С++ не язык логического программирования.
0
Dmitriy_M
1349 / 1230 / 114
Регистрация: 20.03.2009
Сообщений: 4,420
Записей в блоге: 11
30.05.2013, 13:41 #3
Kastaneda, в том то и суть, что бы сделать ООП программу решающую логическую задачу
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
30.05.2013, 13:50 #4
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
что бы сделать ООП программу решающую логическую задачу
Я не об этом, просто есть языки логического программирования, к которым С++ не относится.

Может суть в том, чтобы реализовать на С++ а-ля движок языка ЛП, например в Prolog'е в ядро языка зашит алгоритм backtracking.
0
Dmitriy_M
1349 / 1230 / 114
Регистрация: 20.03.2009
Сообщений: 4,420
Записей в блоге: 11
30.05.2013, 14:20 #5
Цитата Сообщение от Kastaneda Посмотреть сообщение
зашит алгоритм backtracking.
метод резолюций + backtracking
0
_Katya_
Сообщений: n/a
30.05.2013, 15:14 #6
Да, в том то и дело, что требуется на с++ написать программу, решающую логическую задачу, и даже не знаю как начать
Andrew_Lvov
Эксперт С++
259 / 189 / 5
Регистрация: 19.08.2010
Сообщений: 760
Записей в блоге: 1
13.07.2013, 13:12 #7
Уже начал писать ответ, но конец мая же. Млин.
Екатерина, как справились с задачей ?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.07.2013, 13:12
Привет! Вот еще темы с ответами:

Полиморфизм - C++
полиморфизм runtime vs compile polymorphism: как вы на проектах определяете, когда стоит пользоваться шаблоном, а когда...

Полиморфизм - C++
Я хотел реализовать множество, используя множественное наследование, но когда написал template <class T> class set { protected: ...

Полиморфизм - C++
Хай :senor: class MyPrint//производный класс { public: MyPrint() { cout << "Constructor MyPrint" << endl; } virtual...

Полиморфизм - C++
Здравствуйте :) Я пытался читать про полиморфизм. Читал-читал, но не очень дошло. Понял, что можно переопределить виртуальную функцию...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
13.07.2013, 13:12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru