Практикум по С++
Представлены решенные задания практикума по С++
Все программы прошли компиляцию, для них получены исполняемые программы *.exe.
Задания №№ 1 - 13 компилировались программой bcc32.exe (C++ compiler, v. 5) в режиме командной строки. Каждый проект (файл .cpp) размещался в своей отдельной папке, в которую также добавлялся файл z.bat, содержащий управляющие команды. Все такие папки были вложены в папку \Cpp5\v5\, файл программы bcc32.exe размещался в папке \Cpp5\v5\Bin\. В папку \Cpp5\v5\ были вложены: папка Lib(библиотеки) и Include(включаемые файлы *.h, *.c, *.cc )
Файл z.bat, размещенный в папке p5_0, содержит команды:
cd ..\bin
bcc32.exe ..\p5_0\pr5_0
move pr5_0.obj ..\p5_0
move pr5_0.exe ..\p5_0
move pr5_0.tds ..\p5_0
(В папку p5_0 также помещен исходник на С++ - файл pr5_0.cpp).
Для компиляции запускается файл z.bat, причём лучше запускать его из режима MSDOS
(режим командной строки), тогда на экране сохраняются сообщения об ошибках - если они есть.
Конфигурационный файл компилятора bcc32.cfg расположен в папке \Cpp5\v5\Bin\ и содержит:
-5 -L..\Lib -N -P -I..\Include -j2
Исходные тексты на С++ (файлы *.cpp) набраны в редакторе Aditor. Можно использовать любой текстовый редактор, поддерживающий кодировку MSDOS (cp866). Однако на страницах сайта исходники перекодированы для Windows (Win1251) чтобы читался русский текст.
Эти задания можно компилировать и в среде С++ Builder6 (выбрать консольное приложение -
File | New | Other | Console Wizard). В окошке Console Wizard можно указать на файл исходника или отказаться от этого. Тогда нужно копировать исходник в окно редактора. При этом имейте в виду, что должна использоваться кодировка MSDOS, если в исходнике есть кириллица. Поэтому в окне редактора видны крякозябры на месте русских букв. Однако при запуске программы всё нормально.
Остальные задания 14 - 25 (содержат графический интерфейс) компилируются в среде С++ Builder6. Исходники - в кодировке Windows.
Примечание:
Этот практикум - разработка какого-то ВУЗа - попал ко мне случайно. Исходные тексты переработал в соответствии со своими вкусами и откомпилировал - Winni, 2011г.
Консольные приложения.
(Щелкните по знаку # чтобы перейти на страницу приложения)
- # Программа подает 2 звуковых сигнала и выводит слово "Пятачок" несколько раз. Звездочки означают положение слова на экране.
********
******** *********
- # Программа вычисляет (loga(2b) + logb(a))/( log3(a) + log3(ab)) используя #define
- # Программа содержит оператор for, для расчета значения функции P:
- # Программа содержит оператор while, вычисляет сумму чисел, которые кратны 5 - в диапазоне от а до b
- # a, b - катеты прямоугольного треугольника. Составьте функцию, которая рассчитывает площадь и периметр треугольника.
- # Даны вещественные числа a, b, c. Составьте функцию, которая возвращает минимальное и максимальное значения из этих чисел
- # Работа с матрицей - 1
- # Работа с матрицей - 2
- # Составить программу, в которой организовать ввод строки текста, подсчитать количество слов в тексте, длину каждого слова и количество букв "а" в тексте.
- # Составить программу, в которой описывается структура из полей:
Задание, Фамилия, Год рождения, Оценка 1, Оценка 2
Организуйте ввод двух структурных переменных,
вывод каждой структуры на экран и расчет минимальной оценки для каждого человека
- # Составить программу, в которой описывается структура из полей:
Товар; Цена; Сорт. Организуйте ввод двух структурных переменных, вывод каждой структуры на экран и расчет значения "НДС" - по формуле НДС = Цена * 0,05.
- # Очередь из элементов следующей структуры:
Город , Год , Температура, Осадки
- # Программа создает очередь из произвольного количества элементов. Информационная часть динамического элемента должна состоять из вещественного числа и символа. Организуйте обработку каждого элемента: печать символа из информационной части и квадрата вещественного числа.
- # Составить программу для расчета функции :
- # Класс для работы со сферой. Сфера задается координатами центра X, Y, Z и радиусом R. Обязательные функции: два конструктора, деструктор, ввод, вывод, расчет объема сферы, расчет площади поверхности.
- # Составьте программу с использованием класса "матрица", размером 2x2. Матрица задается своими элементами a11, a12, a21, a22. Обязательные функции: ввод, вывод, расчет определителя по формуле: |A|= a11 a22-a12a21.
- # Создайте класс "векторы". Опишите оператор сложения векторов
- # Создайте класс "комплексное число". Комплексное число задается действительной частью a и мнимой частью b. Опишите операторы умножения и сложения двух комплексных чисел.
- # Создайте классы Окружность, Цилиндр, Конус используя наследование. Изучается полиморфизм.
- # Добавьте в классы Конус и Цилиндр функции, которые возвращают тип объекта. Изучите полиморфное поведение функций для расчета объема.
Приложения с графическим интерфейсом (для Windows)
(Щелкните по знаку # чтобы перейти на страницу приложения)
Для каждого приложения Вы можете скачать набор файлов, необходимых для компиляции приложения в среде C++ Builder6. В этом же архиве - инструкция по созданию и .exe файл.
Примечание:
Для того, чтобы C++ Builder6 создал исполняемый файл, выполняемый на компьютерах где нет C++ Builder6 - выполните настройки:
- Menu | Project | Options | Linker
убрать галочку: Use dynamic RTL
- Menu | Project | Options | Packages
убрать галочку: "Build with runtime packages"
Список приложений
- # создать приложение для расчета функции y = sqrt(x) + sqrt(x-1)
- # создать приложение калькулятор, использовать компонент TMainMenu для создания верхнего меню, использовать форму AboutBox для создания идентификатора приложения.
- # приложение для записи информации в файл произвольного доступа
- # Создать программу “Клиенты” для работы с файлом произвольного доступа. Программа должна содержать справочную систему
- # создать справочную систему
- # Создать программу для работы с файлом произвольного доступа
"записная книжка".
|