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

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

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

> Задача, Задача на файлы в паскале
сообщение
Сообщение #1


Новичок
*

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

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


Надо Каждые N компонент файла F1 переписать в обратном порядке. Число N запрашивается с клавиатуры.

type tFile=file of integer;
procedure vvod (var f:tFile);
var i:integer;
Begin
rewrite(f);
while random(20)<>0 do
begin
i:=100-random(50);
write(f,i);
end;
close(f);
end;
procedure vivod(var f:tFile);
var i:integer;
begin
reset(f);
while not eof(f) do
begin
read(f,i);
write(i:4);
end;
close(f);
end;

var f1,f2:tFile;
i,k,n,p:integer;
begin
randomize;
assign(f1,'1.dat');
assign(f2,'2.dat');
vvod(f1);
vivod(f1);
writeln;
writeln('enter komponetu');
readln(n);
reset(f1);
rewrite(f2);
repeat
while p<>filesize(f1) do
begin
for i:=n+p downto 1+p do
begin
seek(f1,i-1);
read(f1,k);
write(f2,k);
end;
p:=p+n;
end;
close(f1); close(f2);
erase(f1);
rename(f2,'1.dat');
vivod(f1);
readln;
end.


Но не работает подскажите как можно исправить!! Чтоб заработало!! Плиз

Сообщение отредактировано: ATAMAH -


--------------------
"Если вы не можете сделать хоpошyю пpогpаммy, сделайте, чтобы она по кpайней меpе выглядела хоpошо"

Бил Гейтс
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гуру
*****

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

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


"На примере" не надо. Надо четко сформулировать условие. Без этого решить задачу невозможно.
Из условия "ДОЛЖНА МЕНЯТЬ Каждые н компаненты" следует, что файл ОБЯЗАТЕЛЬНО должен быть кратен N. Иначе "Каждые н компанент" никак не получится.
Т.е. за тобой - корректное условие: что надо сделать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 





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