// гюльмамедзаде
void save_to_file() {
FILE *f_out = fopen("out.txt", "w");
if (f_out == NULL) {
printf("Ошибка при создании файла out.txt\n");
return;
}
fprintf(f_out, "%-20s %-20s %-15s %-12s\n", "Заказчик", "Название", "Производитель", "Дата");
fprintf(f_out, "----------------------------------------------------------------------------\n");
for (int i = 0; i < count; i = i + 1) {
fprintf(f_out, "%-20s %-20s %-15s %-12s\n",
ar[i].orderer,
ar[i].name,
ar[i].creator,
ar[i].data);
}
fclose(f_out);
printf("Данные сохранены в файл out.txt (%d записей)\n", count);
}
void print_array_paginated() {
if (count == 0) {
printf("Массив пуст\n");
return;
}
int rows_per_page = 5; // Количество строк на одной странице
int total_pages = (count + rows_per_page - 1) / rows_per_page;
int current_page = 1;
char choice;
while (1) {
// Очистка экрана (для Windows)
system("cls");
// Для Linux/Mac используйте system("clear");
printf("\n==================== СТРАНИЦА %d ИЗ %d ====================\n", current_page, total_pages);
printf("%-20s %-20s %-15s %-12s\n", "Заказчик", "Название", "Производитель", "Дата");
printf("----------------------------------------------------------------------------\n");
int start = (current_page - 1) * rows_per_page;
int end = (start + rows_per_page < count) ? start + rows_per_page : count;
for (int i = start; i < end; i = i + 1) {
printf("%-20s %-20s %-15s %-12s\n",
ar[i].orderer,
ar[i].name,
ar[i].creator,
ar[i].data);
}
printf("----------------------------------------------------------------------------\n");
printf("Всего записей: %d\n", count);
if (total_pages <= 1) {
printf("\nНажмите Enter для возврата в меню...");
getchar();
break;
}
printf("\nНавигация: [N] следующая [P] предыдущая [Q] выход\n");
printf("Ваш выбор: ");
scanf(" %c", &choice);
getchar();
if (choice == 'N' || choice == 'n') {
if (current_page < total_pages) {
current_page++;
} else {
printf("Это последняя страница!\n");
printf("Нажмите Enter...");
getchar();
}
}
else if (choice == 'P' || choice == 'p') {
if (current_page > 1) {
current_page--;
} else {
printf("Это первая страница!\n");
printf("Нажмите Enter...");
getchar();
}
}
else if (choice == 'Q' || choice == 'q') {
break;
}
}
}