• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Массив С++

  • Автор темы Denisok
  • Дата начала
D

Denisok

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

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

kr0k

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

Guest

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

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

Guest

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

Вложения

  • datat1.txt
    38,1 КБ · Просмотры: 496
J

Jsn

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

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

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

Guest

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

Jsn

Всё дело в том, что это файл не .dbf. Проверил Clipper'ом, Fox'ом, и Excel не помог.
Это данные метеостанции записанные в компьютер программой, написанной на Borland C.
В Basic'е удалость выделить структуру и длину записи и типы полей. С полями фиксированной длины разобрался легко. Трудность вызвали поля, содержащие дату и время - не никакой закономерности, хотя дата и время известны.
Вот я и решил, что если этот файл подсунуть Borland'у, то что-нибудь с зтими полями прояснится.
Ну, насколько я помню, в dBase тоже совсем не один стандарт. По данным похоже именно на файл какой-то базы данных, т.к. содержатся названия полей и ещё что-то (тип?). Если это просто file of xxxxxxxxxx (какой-нибудь структурированный тип), то откуда в нем заголовки? Если и заголовки добавлены вручную - понять логику ещё сложнее. Excel сам ничего не делает на низком уровне, с данными работает соответствующий ODBC драйвер (или аналог). Драйвера именно нужного нет - эксель бессилен. А дата и время - тип весьма специфический. Обычно что-то вроде - "дата = число дней, прошедших от ххх; время = дробная часть суток". Судя по названиям в том файле, там могут оказаться номера дней недели и часы (или смены) в виде целых чисел, байт, символов или ещё как-нибудь. Ну, например, фантазия программиста в погоне за экономией места могла зашить в младших разрядах байта часы, в старших - четверти часа, а в другом байте - температуру, скорость и направление. Да мало-ли еще как. Если есть точная расшифровка файла - гадайте шараду. Конечно если есть цель! Например перевести годы наблюдений
в удобоваримый вид. В качестве примера или шаблона такой файл не годится, а вот для тренинга/обучения - ничего.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!