Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.05.2019, 20:08   #1
Мария19043
Пользователь
 
Регистрация: 03.12.2018
Сообщений: 83
По умолчанию Переписать в файл все ненулевые элементы файла

как это сделать?
Мария19043 вне форума Ответить с цитированием
Старый 02.05.2019, 10:26   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,586
По умолчанию

Все участники форума помнят Мария19043 и знают, на каком языке ей нужна программа. А поскоку я не помню, то спрошу: файл текстовый или бинарный?
digitalis вне форума Ответить с цитированием
Старый 02.05.2019, 10:42   #3
Мария19043
Пользователь
 
Регистрация: 03.12.2018
Сообщений: 83
По умолчанию

Текстовый файл
Мария19043 вне форума Ответить с цитированием
Старый 02.05.2019, 11:11   #4
сфинкс
Форумчанин
 
Аватар для сфинкс
 
Регистрация: 17.06.2012
Сообщений: 965
По умолчанию

? контрольные примеры есть ?

1-й файл внутри:
012345012345012345
? какой должен быть результат ?

2-й файл внутри:

0
12345
0
12345
0
12345

? какой должен быть результат ?

? что называть "все ненулевые элементы файла" ?
Случайные и Массивы https://programmersforum.ru/showthread.php?t=344371 Учим C# & basic & excel & python https://programmersforum.ru/showthre...=327446&page=5 ничего нерекомендую
сфинкс вне форума Ответить с цитированием
Старый 02.05.2019, 11:21   #5
Мария19043
Пользователь
 
Регистрация: 03.12.2018
Сообщений: 83
По умолчанию

у меня есть файл, там числа (вещественные)
как я поняла ненулевые числа это не равные 0
мне нужно эти исла записать в другой файл, но если есть 0 - он не записывается
Мария19043 вне форума Ответить с цитированием
Старый 02.05.2019, 12:42   #6
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,318
По умолчанию

Поскольку вы гордо умолчали о языке, то предлагаю общий алгоритм
с пояснениями на Паскале.
Вариант 1: Числа записаны строками и разделены пробелом
а) Открываем нужный файл на чтение и второй для записи
б) читаем строку из нужного файла: цикл While NOT EOF(fh) - в Паскале
если достигли конца файла, то завершить работу (закрыть второй файл)
в) выделяем поле (слово) по разделителю: цикл While(<строка не пустая>)
если достигли конца строки, то переходим к п. б): по Break
г) Если это слово число, то преобразуем в число
д) если это число не рано нулю, то пишем во второй файл
е) конец цикла по строке
ж) конец цикла по файлу
з) Закрыть второй файл

Вариант 2: Во всех строках файла записано только по одному числу.
Всё как в варианте 1, но выделять слова не надо: readln(fh, a). Здесь a - строковый тип.
Дополнение: В каждом из вариантов можно использовать чтение слова в переменную заданного типа (например, integer или real). В этом случае необходимо брать обработку ошибок на себя. Так, в Паскале это делается через директивы компилятора: {$I+}, {$I-}
Обработка ошибок нужна, если в файле могут оказаться не числовые символы.

PS: Нашёл другое сообщение и понял, что это C++. Думаю, что проблем с переходом от Паскаль к С++ не должно быть. Та, вторая, задача, может быть решена в аналогичном стиле. :-)
Как-то так, ...

Последний раз редактировалось ViktorR; 02.05.2019 в 12:48.
ViktorR вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ненулевые элементы матрицы Python y3vs.o Помощь студентам 1 03.10.2018 11:57
переписать в третий файл одинаковые элементы двух файлов nura satre Помощь студентам 4 11.06.2018 20:04
записать в файл последовательного доступа N произвольных натуральных чисел. переписать в другой файл элементы кратные K lililili Паскаль, Turbo Pascal, PascalABC.NET 0 29.11.2012 14:43
Элементы матрицы. Все ненулевые элементы массива D(k) расположить в начале массива E(k) и подсчитать их к Вася Маклауд Помощь студентам 0 03.04.2011 17:21