![]() |
|
Модераторы: bsa |
![]()
|
|
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Есть следующая задача:
В текстовом файле хранится вещественная матрица. Записать ее в другой файл таким образом, чтобы в первом столбце находились минимальные элементы строк, а в последнем – максимальные. Подскажите пожалуйста алгоритм решения и функции, которыми пользоваться. Если можно, то пример кода. Заранее спасибо. |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
Алгоритм:
1. Считываешь матрицу из файла. 2. Сортируешь каждую строку матрицы по возрастанию. 3. Записываешь получившуюся матрицу в др. файл. Добавлено через 1 минуту и 34 секунды Нельзя! Что значит пример кода? Пример кода может быть "как унаследовать один класс от другого", а для конкретных задач не пример кода, а решение. Хочешь научиться - попытайся написать его сам. Не хочешь - go в Центр Помощи. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
да, спасибо...
А вот такая задача: В текстовом файле хранится историческая информация: дата в формате dd.mm.yyyy (число.месяц.год) и краткое сообщение о событии. Записать в другой файл эти исторические события в хронологическом порядке. Подскажие пожалуйста алгоритм... |
|||
|
||||
| bsa |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
пишешь структуру:
Затем считываешь весь файл в массив таких структур. И используешь qsort для сортировки этого массива, затем записываешь его обратно в файл. |
||||
|
|||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Вот у меня вопрос, а как считать матрицу из файла. У меня почему-то абра-кадабра получается после того, как я считываю циферки из файла с помощью fscanf'а в массив типа инт? |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
1122, ты бы хоть показал, как ты это делаешь.
|
|||
|
||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Как преобразовать считанный из файла сhar-массив в int-массив?
|
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
1122, а ты его читай не char-массивом, а числами...
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Спасибо..
Блин.. Почему-то это не работает, не подскажите где ошибка?
Просто не выводит ничего на экран. |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
А так чё выведет? -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Ничего
|
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
А покажи код полностью.
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
|
|||
|
||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Или вот... аналогичная задача, нужно считать из типизированного файла числа (кстати, что значит типизированный? это не текстовой? если да, то какой?).
Пользуюсь этим кодом:
На экран выводятся совершенно левые числа.. абра-кадабра :( |
|||
|
||||
| archimed7592 |
|
||||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
Закомментируй этот кусок - ты же сначала считываешь данные из файла здесь(по всей видимости ты считываешь файл до конца), после чего естественно, что feof вернёт true... Добавлено через 4 минуты и 57 секунд
Не знаю... спроси у преподавателя, что он под этим понимает. Дай ка угадаю: для файла, заполненного пробелами на экран выведется много чисел 32 Тебе нужно разобраться в чём разница между символом текста, текстом и собственно числом. Текст "123" состоит из символов '1','2','3'. getc возвращает первый символ('1') после чего ты преобразовываешь его в число. На самом деле никакого преобразования нет, ибо символ - это и есть число, представляющее код данного символа. Для пробела(' ') это 32, к примеру(в известных мне кодировках). -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
||||
|
|||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
ок. Спасибо за помощь.
Вот еще вопрос возник, как быть в такой ситуации: Есть массив чисел (кратный 7, например 21 число). Нужно брать из этого массива по 7 чисел и анализировать на наличие какой-нибудь цифры. Если данная цифра (например ноль) есть в выбранной семерке, то ее дальше не рассматривать. После анализа вывести на экран данный массив, но без этих групп цифр (по 7 шт), в которых встретились, например, нули. Подскажите алгоритм пожалуйста. Это сообщение отредактировал(а) 1122 - 6.4.2008, 20:20 |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Вот придумал такой код:
Но он выдает опять же абру-кадабру из цифр. |
|||
|
||||
| opjox |
|
||||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 90 Регистрация: 17.1.2008 Репутация: 2 Всего: 14 |
В дельфях это бинарные файлы, из которых можно читать данные только одного типа (соответственно, сдвиги в файле будут фактически равны sizeof(int)*n, но там нужно будет указать только n). В Си нет такой строгой типизации, но если подразумевается именно это, то работа, наверно, будет примерно такой:
Если я правильно понял условия задачи, то:
jmp в твоем случае будет 7, а n = 21/jmp Функцию нахождения цифры в числе (FindDig) реализуй сам |
||||||||
|
|||||||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Спасибо за помощь.
|
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 6 Всего: 93 |
Такую абракадабру обычно пишут так:
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |