* Write a program to read a text file and display its contents on the screen. #+ATTR_LATEX: :options frame=single,breaklines=true #+begin_src cpp :tangle 28.cpp :wrap src text #include #include using namespace std; const string FILE_PATH = "./28.in"; int main() { string line; fstream file; file.open(FILE_PATH, ios_base::in); if (!file.is_open()) exit(1); while (getline(file, line)) { cout << line; if (file.peek() != EOF) { cout << endl; } } file.close(); return 0; } #+end_src #+begin_src text Asperger syndrome (AS), also known as Asperger's, is a former neurodevelopmental disorder. It is characterized by significant difficulties in social interaction and nonverbal communication. #+end_src #+LATEX: \clearpage * Write a program to copy the contents of a file into another. #+ATTR_LATEX: :options frame=single,breaklines=true #+begin_src cpp :tangle 29.cpp :wrap src text #include #include using namespace std; const string SRC_FILE_PATH = "./29.in"; const string DST_FILE_PATH = "./29.out"; int main() { string line; fstream src, dst; src.open(SRC_FILE_PATH, ios_base::in); dst.open(DST_FILE_PATH, ios_base::out); dst.close(); dst.open(DST_FILE_PATH, ios_base::app); if (!src.is_open()) exit(1); while (getline(src, line)) { dst << line; if (src.peek() != EOF) { dst << endl; } } src.close(); dst.close(); return 0; } #+end_src #+LATEX: \clearpage * Write a program to read the class object of student_info such as name , age ,sex ,height and weight from the keyboard and to store them on a specified file using read() and write() functions. Again the same file is opened for reading and displaying the contents of the file on the screen. #+ATTR_LATEX: :options frame=single,breaklines=true #+begin_src cpp :tangle 30.cpp :wrap src text #include #include #include using namespace std; const string FILE_PATH = "./30.out"; class StudentInfo { char name[30]; uint age; char sex; uint height; public: void read(); void write(); }; void StudentInfo::read() { cout << "Name: "; cin >> name; cout << "Age: "; cin >> age; cout << "Sex (m/f): "; cin >> sex; cout << "Height: "; cin >> height; cout << "[LOG] Data read\n"; } void StudentInfo::write() { ofstream file(FILE_PATH); file.close(); file.open(FILE_PATH, ios_base::app); file << "Name: " << name << endl << "Age: " << age << endl << "Sex: " << (sex == 'm' ? "Male" : "Female") << endl << "Height: " << height << "cm"; cout << "[LOG] Data written\n"; file.close(); } int main() { StudentInfo foo; string line; foo.read(); foo.write(); ifstream file(FILE_PATH); if (!file.is_open()) exit(1); cout << "File contents: \n"; while (getline(file, line)) { cout << line; if (file.peek() != EOF) { cout << endl; } } return 0; } #+end_src #+begin_src text Name: Hello Age: 19 Sex (m/f): m Height: 180 [LOG] Data read [LOG] Data written File contents: Name: Hello Age: 19 Sex: Male Height: 180cm #+end_src