кція по роботі з програмою
Запускаємо програму, після чого відкривається вікно, куди потрібно ввести кількість файлів створюваної вами файлової системи:
Далі потрібно ввести ім'я файлу. Для першого файлу ім'я буде, наприклад file1 :
Тепер необхідно ввести дату створення файлу. Дата вводиться у форматі (дд мм рррр), наприклад:
Наступним кроком буде введення кількості звернень до файлу:
Далі програма повторює запит імені файлу, дати створення і кількості звернень, вводимо дані:
Після цього програма виведе створений нами каталог:
У наступному кроці програма запропонує видалити файли, дата створення яких менша заданої. Введемо дату 1 січня 2011:
Результатом цієї дії буде висновок файлів, які залишилися після видалення:
У підсумку програма виводить файл з найбільшою кількістю звернень:
Наприкінці потрібно натиснути будь-яку клавішу для закриття програми.
5. Вихідний код
# include stdafx.h
# include lt; iostream gt;
# include stdafx.h namespace std; data//структура описує дату
{day;//деньmon;//місяць
int year;//рік
}; file//структура описує файл
{name [20];//імяdate;//дата
int kol;//кількість обращенійin ()//функція введення дати
{ gt; gt; date.day; gt; gt; date.mon; gt; gt; date.year;
} out ()//функція виведення дати
{ lt; lt; date.day lt; lt; raquo ;; lt; lt; date.mon lt; lt; raquo ;; lt; lt; date.year lt; lt; raquo ;;
}
}; * a;//масив файлів
int n;//к-ть файлів
int operator lt; (file a, file b)//оператор менше для дат
{(a.date.year lt; b.date.year
|| ((a.date.year == b.date.year) amp; amp; (a.date.mon lt; b.date.mon))
||((a.date.year==b.date.year)amp;amp;(a.date.mon==b.date.mon)||(a.date.daylt;b.date.day)))return 1; return 0;
} operator gt; (file a, file b)//оператор більше для кол-во звернень
{(a.kol gt; b.kol) return 1; else 0;
} del (int k)//функція видалення файлу
{* b=new file [n - 1]; r=0; (int i=0; i lt; (n - 1); i ++)
{(i lt; k) r=0; else r=1; [i]=a [i + r];
}=b;
- n;
} main (int argc, char * argv [])
{. imbue (locale ( .866 ));//установка локалізації lt; lt; L Введіть кількість файлів: raquo ;;
cin gt; gt; n;=new file [n]; (int i=0; i lt; n; i ++) {
wcout lt; lt; L Введіть ім'я файлу № lt; lt; i + 1 lt; lt; L laquo ;: raquo ;; gt; gt; a [i] .name; lt; lt ; L Введіть дату створення файла № lt; lt; i + 1 lt; lt; L (дд мм рррр): raquo ;; [i] .in (); lt; lt; L Введіть кількість звернень до файлу № lt; lt; i + 1 lt; lt; L : Raquo ;;
cin gt; gt; a [i] .kol; lt; lt; endl;
} lt; lt; L Висновок каталогу n raquo ;;
for(i=0;ilt;n;i++){lt;lt;i+1lt;lt;endllt;lt;laquo;traquo;lt;lt;a[i].namelt;lt;endllt;lt;laquo;traquo;;[i].out();lt;lt;endllt;lt;laquo;traquo;lt;lt;a[i].kollt;lt;endl;
} lt; lt; L Видалення файлів, дата створення яких менше заданої: n t введіть дату: raquo ;;
file temp; .in (); (i=0; i lt; n; i ++)
{(a [i] lt; temp) del (i);
} lt; lt; L Решту файлів n raquo ;;
for(i=0;ilt;n;i++){lt;lt;i+1lt;lt;endllt;lt;laquo;traquo;lt;lt;a[i].namelt;lt;endllt;lt;laquo;traquo;;[i].out();lt;lt;endllt;lt;laquo;traquo;lt;lt;a[i].kollt;lt;endl;
} lt; lt; L Файл з найбільшою кількістю звернень n raquo ;;
file max=a[0];(i=1;ilt;n;i++)if(a[i]gt;max)max=a[i];lt;lt;laquo;traquo;lt;lt;max.namelt;lt;endllt;lt;laquo;traquo;;.out();lt;lt;endllt;lt;laquo;traquo;lt;lt;max.kollt;lt;endl;
system ( pause ); 0;
}
Висновок
У процесі написання кур...