Массив С++

Тема в разделе "C/C++/C#", создана пользователем Denisok, 14 июн 2010.

  1. Denisok

    Denisok Гость

    Сформировать массив, содержащий сведения о количестве блинчиков (хот-догов или других изделий),испеченных поварами «Бистро» за неделю. Структурный тип содержит поля: фамилия повара, количество блинчиков, испеченных им ежедневно в течение шестидневной недели, т.е. раздельно в понедельник, вторник и т.д.

    Написать программу, выдающую на печать:
    фамилию сборщика и общее количество блинчиков, испеченных им за неделю;
    фамилию сборщика испекшего наибольшее количество блинчиков, и день, когда он достиг наивысшей производительности труда.
     
  2. kr0k

    kr0k Гость

    поддерживаю предидущего аратора толь вот решать примитивную задачу в которой нужно пример из книжки минимально подправить я не буду.
     
  3. Гость

    Есть файл, нужно разобраться с его структурой.
    Файл содержит описание полей.
    С идентификаторами полей и их длинами я разобрался.
    С типами полей вышла заминка. Известно только, что есть поля цифровые (целые и дробные), дата и время.
    Файл не раскрывается как *.dbf.
    Файл создан Borland C. У меня нет С, поэтому не могу протестировать этот файл. Кое-что удалось сделать на Basic.
    Нужны типы полей записи, их физическая длина на диске.

    Файл прикреплю позже, если найдутся желающие помочь.
     
  4. Гость

    Прикрепил файл, о котором говорил в предыдущем сообщении. Расширение изменил на .txt, чтобы его приняла система.
     

    Вложения:

    • datat1.txt
      Размер файла:
      38,1 КБ
      Просмотров:
      7
  5. Jsn

    Jsn Гость

    Basic не предназначен для работы с файлами данных.
    Есть такая штука - "поисковик" называется. И даже не одна! Ищем "тип файла dbf", читаем описание.
    Если уж лень установить какое-нибудь из найденных поиском приложений, тогда идем "коротким" путем:
    1. Считываем файл в одномерный массив байт
    2. Экспериментальным путем, считывая из этого массива куски, вылавливаем разные части заголовка и пытаемся сообразить "что-бы это значило"
    3. Определив примерное начало данных (это где-то после заголовка), аналогично пытаемся преобразовать куски произвольной длины в разные типы данных.
    4. Убеждаемся, что поля в таблице идут в том-же порядке, что и в заголовке.
    5. С удивлением замечаем, что во-первых поля могут быть переменной длины, во-вторых что Бэйсик не со всеми типами данных дружит.
    6. Бросаем "короткий" путь

    Ну а дальше, пройдя "короткий" путь, всё просто. Два варианта:
    0. Устанавливаем какое-нибудь приложение, работающее с файлами dbf
    а. Пишем на том приложении, которое понимает файл.
    б. Попытаемся вернуться к "короткому" пути: Экспортируем из файла данные например в тхт с каким-либо разделителем и дальше открываем его Бейсиком как текст. Помня о числе полей вырезаем куски текста и пользуемся функциями типа StrToInt по мере надобности и как-то пытаемся использовать полученные данные.

    Лично я бы выбрал "длинный" путь, т.е. пункты "0" и "а" - получится раз в 50-100 короче и что самое странное - правильно.
     
  6. Гость

    Jsn, спасибо за ответ.
    Всё дело в том, что это файл не .dbf. Проверил Clipper'ом, Fox'ом, и Excel не помог.
    Это данные метеостанции записанные в компьютер программой, написанной на Borland C.
    В Basic'е удалость выделить структуру и длину записи и типы полей. С полями фиксированной длины разобрался легко. Трудность вызвали поля, содержащие дату и время - не никакой закономерности, хотя дата и время известны.
    Вот я и решил, что если этот файл подсунуть Borland'у, то что-нибудь с зтими полями прояснится.
     
  7. Jsn

    Jsn Гость

    Ну, насколько я помню, в dBase тоже совсем не один стандарт. По данным похоже именно на файл какой-то базы данных, т.к. содержатся названия полей и ещё что-то (тип?). Если это просто file of xxxxxxxxxx (какой-нибудь структурированный тип), то откуда в нем заголовки? Если и заголовки добавлены вручную - понять логику ещё сложнее. Excel сам ничего не делает на низком уровне, с данными работает соответствующий ODBC драйвер (или аналог). Драйвера именно нужного нет - эксель бессилен. А дата и время - тип весьма специфический. Обычно что-то вроде - "дата = число дней, прошедших от ххх; время = дробная часть суток". Судя по названиям в том файле, там могут оказаться номера дней недели и часы (или смены) в виде целых чисел, байт, символов или ещё как-нибудь. Ну, например, фантазия программиста в погоне за экономией места могла зашить в младших разрядах байта часы, в старших - четверти часа, а в другом байте - температуру, скорость и направление. Да мало-ли еще как. Если есть точная расшифровка файла - гадайте шараду. Конечно если есть цель! Например перевести годы наблюдений
    в удобоваримый вид. В качестве примера или шаблона такой файл не годится, а вот для тренинга/обучения - ничего.
     
Загрузка...
Похожие Темы - Массив С++
  1. zhivushko
    Ответов:
    1
    Просмотров:
    1.194
  2. hollydoll
    Ответов:
    1
    Просмотров:
    1.066
  3. Mitch
    Ответов:
    1
    Просмотров:
    1.554
  4. filin94
    Ответов:
    1
    Просмотров:
    1.712
  5. Вероника Эл
    Ответов:
    5
    Просмотров:
    184

Поделиться этой страницей