Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 34

Массив строк - список книг определенного автора

13.04.2012, 20:37. Показов 1556. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите как делать. Если есть дайте ссылку на подобные задачи.

Массив строк.
Каждая строка содержит:
-шифр книги
-ФИО автора
-год издания
-год количество страниц
Определить список книг определенного автора, изданных в определенном месте и не ранее указанного года.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.04.2012, 20:37
Ответы с готовыми решениями:

Бинарные файлы. Вывести названия книг определенного автора, изданных до 2000 года. Определить долю книг
помогите пожалуйста: В файле хранятся сведения о личной библиотеке: фамилия автора, название, издательство, год издания, тематика книги....

Структура: Составьте программу, выдающую список книг определенного автора, хранящихся в библиотеке
Объясните пжл словами пошагово от начала до конца, что нужно делать. Не могу понять, толи здесь нужно сначала программно создать файл с...

Найти название книг автора, изданных с определенного года
Кто может помочь разобраться? Есть структура, содержащая поля: фамилии автора, названия книги, года издания. Вопрос: Как найти...

7
 Аватар для Venzo
127 / 125 / 16
Регистрация: 03.07.2011
Сообщений: 354
13.04.2012, 21:02
это все нужно разделять каким-то символом, например |, тогда строка будет выглядеть примерно следующим образом:
1|Пушкин А.С.|1982|100
Затем через strtok разделить и дальше по заданию)
0
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 34
13.04.2012, 21:31  [ТС]
Цитата Сообщение от ZoRT Посмотреть сообщение
это все нужно разделять каким-то символом, например |, тогда строка будет выглядеть примерно следующим образом:
1|Пушкин А.С.|1982|100
Затем через strtok разделить и дальше по заданию)
Лексемы на которые разобьем строку нужно будет сравнивать по символьно, или можно как-то их целиком сравнивать?
0
1 / 1 / 0
Регистрация: 16.11.2011
Сообщений: 88
16.04.2012, 11:43
Помогите сделать, ни чего не получается.

Добавлено через 48 минут
У меня задача почти такая же
Каждая строка содержит:
-ФИО работника
-Профессию
-Время работы
По запросу определить количество работников данной профессии работающих дольше заданного времени.
0
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
16.04.2012, 12:30
Цитата Сообщение от GHOST12 Посмотреть сообщение
Помогите сделать, ни чего не получается.
выкладывайте что смогли сделать, допишем. Если не разбираетесь то совет открыть книжку и разобраться
0
1 / 1 / 0
Регистрация: 16.11.2011
Сообщений: 88
16.04.2012, 19:13
Цитата Сообщение от panicwassano Посмотреть сообщение
выкладывайте что смогли сделать, допишем. Если не разбираетесь то совет открыть книжку и разобраться
Может кто может дать код подобной задачи?
0
873 / 771 / 173
Регистрация: 11.01.2012
Сообщений: 1,942
16.04.2012, 20:05
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
#include <string.h>
#define QUAN 3
using namespace std;
 
      main()
      {
              char string[QUAN][100]   =
              {
                    "I.V.Ivanov,   sportsman, 6 hours",
                    " P.A.Sidorov, writer,   4 hours ",
                    "A.S.Petrov,   student,   0 hours"
             };
 
      char cmp[50];
      int fl = 0,quan = 0;
 
      cout << "\nEnter a timework :  ";
      cin.getline(cmp,50);
 
        for(int i = 0; i< QUAN; i++)
        {
           if(strstr(string[i], cmp))
           {
            cout << " Found at :   " << string[i] << "\n";
            quan ++;
            fl++;
            }
        }
 
     if(!fl) cout << " Not found .\n";
 
      cout << " Quantity  " << quan << endl;
     system("pause");
}
1
 Аватар для zitxbit
96 / 748 / 279
Регистрация: 11.04.2012
Сообщений: 971
16.04.2012, 21:55
Создайте файл books.txt и заполните его данными в формате 1|Пушкин А.С.|1982|100.
Скомпилируйте код ниже, и проверьте работает ли он. Пишите.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
    static char author[256] = "\0";
    static char city[256] = "\0";
    static char year[256] = "\0";
    printf("Vvedite avtora knig: "); gets(author);
    printf("Vvedite gorod: ");       gets(city);
    printf("Vvedite god izdania: "); gets(year);
 
    FILE* fp = NULL; 
    static char* filename = "d:\\books.txt";
    if ((fp = fopen(filename,"r")) == NULL)
        printf("Unable to open file %s\n",filename);
 
    static char psz[256] = "\0";
    while (fgets(psz,256,fp) != NULL)
    {
        char** ppsz = new char*[4];
        for (int i = 0, count = 0; (psz[i] != '\0') 
            && (i < strlen(psz)); i++)
            if (psz[i] == '|')
            {
                int k = i+1, n = 0;
                static char attr[256] = "\0";
                while ((psz[k] != '|') && (k < strlen(psz))) 
                    attr[n++] = psz[k++];
 
                attr[n] = '\0';
 
                ppsz[count] = new char[256];
                strcpy(ppsz[count++],attr);
            }
 
        if (!strcmp(ppsz[0],author) && !strcmp(ppsz[1],city) &&
            atoi(ppsz[2]) >= atoi(year)) printf("%s\n",psz);
    }
 
    fclose(fp);
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.04.2012, 21:55
Помогаю со студенческими работами здесь

Найти названия книг автора, изданных с определенного года
Дан файл библ, содержащий сведения о книгах. Сведения о каждой из книг – это фамилия автора, название и год издания. Найти названия книг...

Дан список, состоящий из названия книг. Напечатать список, упорядоченный по фамилии автора
Дан список, состоящий из названия книг, фамилии авторов, названия издания и года издания. Напечатать список, упорядоченный по фамилии...

Прочитать текстовый файл и найти название книг данного автора, изданных с определенного года
Картотека содержит сведения о каждой книге: фамилия автора, название и год издания. 1. Создать текстовый файл, содержащий фамилию...

Вывести список книг заданного автора
Помогите выполнить. Для книг, хранящихся в библиотеке, указывается автор, название книги и год ее издания. Вывести список книг заданного...

Вывести список книг автора, находящихся в коллекции
А. Создать файл, содержащий сведения о личной коллекции книголюба. Структура записи: шифр книги, автор, название, год издания,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru