Отчет1 (Лабораторная работа №1)
Описание файла
Файл "Отчет1" внутри архива находится в следующих папках: Лабораторная работа №1, Лаба1. Документ из архива "Лабораторная работа №1", который расположен в категории "". Всё это находится в предмете "объектно-ориентированное программирование (ооп)" из 3 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "объектно-ориентированное программирование (ооп)" в общих файлах.
Онлайн просмотр документа "Отчет1"
Текст из документа "Отчет1"
Московский государственный технический университет им. Н.Э.Баумана
_________________________________________________________________
Лабораторная работа №1 по дисциплине ПППО
«Изучение классов потокового ввода вывода стандартные объекты CIN и COUT »
ИСПОЛНИТЕЛЬ: | |
студентка группы ИУ5-61 | _____________________ |
Забаева А. Л. | "__"_____________2008 г. |
Москва - 2008
________________________________________________________________
-
Цель работы
Целью лабораторной работы является детальное изучение системы программирования BC 3.1 C++ и классов для работы с потоковым вводом выводом С++ (системные объекты: CIN и COUT). В результате студенты должны приобрести навыки работы в среде С++ и уметь выполнять операции потокового ввода вывода текстовой информации при программировании на С++.
-
Выполнение по шагам
1.Ввод данных с консоли с запросом в виде текста "Введите …"(ввод с клавиатуры): ввод числа целого типа; ввод числа действительного типа; ввод строки текста (ввод выполняется посредством объекта CIN). Строка определяется в виде массива типа char или указателя char * с последующим динамическим распределением памяти new. Размер массива должен быть достаточным для ввода строки.
2.Вывод всех введенных чисел и строки в соответствующих форматах с пояснительным текстом "Вы ввели …" (посредством объекта COUT).
3.Вывод строки или целого числа посредством двух собственных пользовательских функций, определенных в другом исходном файле проекта и вызываемой непосредственно из оператора потока COUT (а не отдельной функцией в строке, а между операциями "<<"). Функции должны возвращать типы строка (char * - функцию нужно назвать strPrint) и целого числа (int – функцию нужно назвать iPrint). Эти обе функции размещаются во втором исходном модуле. Не забудьте в первом исходном модуле правильно описать прототипы этих функций.
4.Выполнить форматирование для введенного целого числа и вывод данных с помощью методов настройки (метод – setf вызываемый в отдельной строке программы) и манипуляторов (dec, hex, oct, endl размещаемых в потоке).
5.Продемонстрировать, в проихвольной форме, использование всех методов классов для объектов CIN и COUT: setf (для целого числа при выводе в шестнадцатеричном виде), width (для строки), fill (для строки) и precision (для действительного числа).
-
Перечень ошибок исправленных при отладке программы
Подключала func.cpp к main.cpp.
-
Диаграмма классов потокового ввода вывода
ios class summary (IOSTREAM.H )
4. Листинги программ.
Func.cpp
char* strPrint()
{
char* str;
str="123";
return str;
}
int iPrint()
{
int i=5;
return i;
}
Main.cpp
#include <iostream.h>
char* strPrint();
int iPrint();
void main()
{
cout<<"---Input stream----"<<endl;
cout << "Input number"<<endl;
int i;
cin >> i;
cout << "You have wrote "<<i<<endl;
cout << "Input real number"<<endl;
float f;
cin >> f;
cout << "You have wrote "<<f<<endl;
cout << "Input string"<<endl;
char str[100];
cin >> str;
cout << "You have wrote "<<str<<endl;
cout<<"---User function----"<<endl;
cout<<"String func"<<endl;
cout << strPrint()<<endl;
cout<<"Int func"<<endl;
cout << iPrint()<<endl;
cout<<"---Format method----"<<endl;
cout<<"Setf method"<<endl;
cout.setf(ios::hex | ios::uppercase);
cout<<28<<endl;
cout<<"Fill&width method"<<endl;
char str3[]="123 456";
cout.fill('$');
cout.width(15);
cout<<str3<<endl;
cout<<"Precision method"<<endl;
float f1=2.7123;
cout.precision(2);
cout<<f1<<endl;
cout<<"---Manipulators----"<<endl;
cout<<13<<hex<<endl;
}
5. Пример выполнения.
4