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

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

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

 
 Ответить  Открыть новую тему 
> Работа с файлом, 1 операция с файлом
сообщение
Сообщение #1


Новичок
*

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

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


Задание: Дан файл целых чисел. Удалить из него все отрицательные числа.
uses crt;
var i,j:integer;
a:array [1..30000] of integer;
begin
clrscr;
assign(input,'c:\input.txt');
reset(input);
i:=1;
while not eof(input) do
begin
read(a[i]);
i:=i+1;
end;
close(input);
assign(output,'c:\input.txt');
rewrite(output);
for j:=1 to i do
if a[j]>0 then write(a[j]:4);
close(output);
readkey;
end.



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


--------------------
И никто его так и не узнал*)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Новичок
*

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

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


Тебе нужно переписать все неотрицательные значения из одного файла в другой?

Добавлено через 1 мин.
Извини, не то спросил, невнимательно прочел.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

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

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


Цитата(not_programmer @ 17.12.2007 17:53) *

Тебе нужно переписать все неотрицательные значения из одного файла в другой?

Добавлено через 1 мин.
Извини, не то спросил, невнимательно прочел.

Да ниче...только мне надо в коде проблему найти:)


--------------------
И никто его так и не узнал*)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Новичок
*

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

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



uses crt;
var i,j:integer;
a:array [1..30000] of integer;
n : integer;
begin
clrscr;
assign(input,'с:\input.txt');
reset(input);
i:=0;
while not eof(input) do
begin
inc(i);
read(a[i]);
end;
close(input);
assign(input,'с:\input.txt');
rewrite(input);
for j:=1 to i do
if a[j]>0 then write(a[j]:3);
for j:=1 to i do
if a[j]>0 then write(input,a[j]:3);
close(input);
readkey;
end.


вот. что не понятно - спрашивай.

Добавлено через 1 мин.
В разделе описания переменных n:integer; - не нужно, удали
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


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

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

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


зачем массив ?

var
f, temp: Text;
value: Integer;
begin
assign(f, 'c:\input.txt');
reset(f);

assign(temp, 'c:\temp.txt');
rewrite(temp);

while not eof(f) do begin
readln(f, value);
if value >= 0 then
writeln(temp, value);
end;

close(f);
erase(f);

close(temp);
rename(temp, 'c:\input.txt');
end.


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


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


Новичок
*

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

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


Цитата(klem4 @ 17.12.2007 18:18) *

зачем массив ?

var
f, temp: Text;
value: Integer;
begin
assign(f, 'c:\input.txt');
reset(f);

assign(temp, 'c:\temp.txt');
rewrite(temp);

while not eof(f) do begin
readln(f, value);
if value >= 0 then
writeln(temp, value);
end;

close(f);
erase(f);

close(temp);
rename(temp, 'c:\input.txt');
end.


Блин...спасибо конечно, ноэффект такой же, Никогда не работал с файлами, что ваще должна показать программа? неужели пустой экран?


--------------------
И никто его так и не узнал*)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


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

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

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


если ты внимательно прочитаешь задание, все станет понятно ...


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


Новичок
*

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

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


При удалении отрицательныч чисел разве не должно было показать оставшиеся положительные числа?


--------------------
И никто его так и не узнал*)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Новичок
*

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

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


Цитата(Инкогнито @ 17.12.2007 20:45) *

При удалении отрицательныч чисел разве не должно было показать оставшиеся положительные числа?


Разве не показывает? У меня все работает.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

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

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


Не-а, пустой экран...мож с Паскалем самим какая то фигня, а чё там показывается? набор положительных чисел?


--------------------
И никто его так и не узнал*)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Гость






Цитата
Не-а, пустой экран...
А файл? ТЫ результат должен в файл записать или как? Вот и проверяй в файле... Кстати, "файл целых" <> "текстовый файл", это так, к слову, чтоб потом не удивлялся, если придется переделывать...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Новичок
*

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

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


Всё! работает! я в Паскале смотрел, а надо было в самом файле, и еще числа записывал неправильно, но теперь всё понял, работает ура:) Спасибо всем вам:)


--------------------
И никто его так и не узнал*)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


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

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

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


да, кстати, volvo прав, если файл целых, то программа немного изменится ...


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

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

 





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