Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <stdio.h>
- #include <conio.h>
- #include <stdlib.h>
- #include <fstream>
- #include <vector>
- using namespace std;
- struct scan_info {
- char model[25]; // наименование модели
- int price; // цена
- double x_size; // горизонтальный размер области сканирования
- double y_size; // вертикальный размер области сканирования
- int optr; // оптическое разрешение
- int grey; // число градаций серого
- };
- void in_scan(int mm, const char *way);
- void out_scan(int mm, const char *way, int key);
- int main() {
- setlocale(LC_ALL, "Russian");
- cout << "Введите количество сканеров: ";
- int n;
- cin >> n;
- const char *Path = "D:\Textfiles\TextFile1.txt"; // путь до файла
- in_scan(n, Path);
- cout << "Введит номер строки, которую необходимо вывести: ";
- int k;
- cin >> k;
- k--;
- out_scan(n, Path, k);
- return 0;
- }
- void in_scan(int mm, const char *way) {
- vector<scan_info> group(mm);
- for (int i = 0; i < mm; i++) { //запоняем вектор структуры данными
- cout << "\nВведите данные по " << i + 1 << " Сканер:";
- cout << "\nНаименование модели: ";
- cin >> group[i].model;
- cout << "\nВведите цену: ";
- cin >> group[i].price;
- cout << "\nГоризонтальный размер области сканирования: ";
- cin >> group[i].x_size;
- cout << "\nВертикальный размер области сканирования: ";
- cin >> group[i].y_size;
- cout << "\nОптическое разрешение: ";
- cin >> group[i].optr;
- cout << "\nЧисло градаций серого: ";
- cin >> group[i].grey;
- }
- ofstream out(way, ios::binary); // записываем данные в файл
- out.write((char *) &mm, sizeof(mm));
- out.write((char *) &group, sizeof(group));
- out.close();
- }
- void out_scan(int mm, const char *way, int key) {
- vector<scan_info> summ(mm);
- ifstream fr(way, ifstream::binary);
- fr.read((char *) &summ, sizeof(summ));
- fr.close();
- cout << "\nИскомая строка: ";
- cout << "\nНаименование модели: " << summ[key].model << "\nЦена: " << summ[key].price
- << "\nГоризонтальный размер области сканирования: " << summ[key].x_size
- << "\nВертикальный размер области сканирования: " << summ[key].y_size << "\nОптическое разрешение: "
- << summ[key].optr << "\nЧисло градацей серого: " << summ[key].grey;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement