IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Файлы, Числа по возрастанию
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 92
Пол: Мужской
Реальное имя: Stanislav

Репутация: -  0  +


Вы наверное сейчас посмеётесь..
Это самый идиотский способ делать программу..
Тем более не компилируется

Надо читать два файла, где числа по возрастанию расположены и отделены запятой.
И в третий файл объединить оба чтоб числа опять же были в возрастающеё последовательности..

Не знаю как сделать просто.. unsure.gif
Прикрепленный файл  UZD1.PAS ( 798 байт ) Кол-во скачиваний: 463


--------------------
Ben sensiz yaşayamam
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Запятая обязательно ? Если да, то можно ли ичпользовать строки или еще что-нибудь? Вот если зазделены пробелом то вот так:

uses crt;

var
f1, f2, f3: Text;

a, b: Integer;

_eof, null_a, null_b: Boolean;
begin

assign(f1, 'C:\f1.txt'); reset(f1);
assign(f2, 'C:\f2.txt'); reset(f2);
assign(f3, 'C:\f3.txt'); rewrite(f3);

read(f1, a);
read(f2, b);

_eof := false;

null_a := false;
null_b := false;

repeat

if a <= b then begin
write(f3, a, ' '); null_a := true;

if not(eof(f1)) then begin
read(f1, a);
null_a := false;
end
else _eof := true;
end
else begin
write(f3, b, ' '); null_b := true;
if not(eof(f2)) then begin
read(f2, b);
null_b := false;
end
else _eof := true;
end;

until _eof;

if not(null_a) then write(f3, a, ' ');
if not(null_b) then write(f3, b, ' ');

if not(eof(f1)) then begin

while not(eof(f1)) do begin
read(f1, a);
write(f3, a, ' ');
end;

end else while not(eof(f2)) do begin
read(f2, b);
write(f3, b, ' ');
end;

close(f1);
close(f2);
close(f3);

end.



Тестовый файлы в аттаче


Прикрепленные файлы
Прикрепленный файл  f1.txt ( 14 байт ) Кол-во скачиваний: 164
Прикрепленный файл  f2.txt ( 7 байт ) Кол-во скачиваний: 152


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






В поиск по форуму... Я приводил процедуру, которая читает числа из текстового файла независимо от разделителя...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Пионер
**

Группа: Пользователи
Сообщений: 92
Пол: Мужской
Реальное имя: Stanislav

Репутация: -  0  +


klem4

Спасибо, великолепная прграмма!! give_rose.gif
Только вот всё-таки, в каком именно её куске видно, что разделитель - это пробел?

volvo

Честно смотрела поиск, твоей процедуры не нашла..
В какой теме хоть её найти можно?

Запрос Чтение чисел из файла - не может быть обработан


--------------------
Ben sensiz yaşayamam
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Цитата
В какой теме хоть её найти можно?

Вот тут: Помогие с запятыми
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Пионер
**

Группа: Пользователи
Сообщений: 92
Пол: Мужской
Реальное имя: Stanislav

Репутация: -  0  +


volvo
Здорово!!

А можно спросить?

Вот в этой функции
function get_num(var f: text): integer;

насколько я поняла, она читает строку файла пока не найдёт НЕ цифру, значит отделит определённое число.
А вот строки
begin .....
get_num := -1;
......
get_num := X
end;
end;

для чего нужно задавать значение -1 ?


--------------------
Ben sensiz yaşayamam
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






А ты обрати внимание, что если (когда начинается работа функции) мы уже находимся в конце файла (ну, точнее - после текущей позиции уже нет символов, фактически это одно и то же), то ничего не происходит, и возвращается -1 как признак конца файла. В основной программе можно при получении -1 прекращать обработку файла (естественно, если у тебя в файле могут храниться и отрицательные числа - то надо какой-то другой признак, например, -32767, да и функцию придется немного переделать)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Пионер
**

Группа: Пользователи
Сообщений: 92
Пол: Мужской
Реальное имя: Stanislav

Репутация: -  0  +


Спасибо!! Теперь поняла вроде! good.gif


--------------------
Ben sensiz yaşayamam
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 4.12.2021 12:50
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name