Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 14.01.2018, 18:37   #1
kami_sa
Новичок
 
Регистрация: 12.01.2018
Сообщений: 4
Репутация: 10
По умолчанию Работа с типизированным файлом

Дан файл F, компоненты которого являются действительными числами. Найти: наименьшее из значений компонент файла с четными номерами. Записать это значение N раз в конец файла
Написала программу, но есть одно НО: не получается записать это минимальное число в конц файла т.к. rewrite - открытие файла для записи с удалением всей информации, внесенной ранее. Тогда как можно сохранить данные и вписать в тот же файл нужное значение?

var
f1: file of real;
arr: array of real;
l: integer; {количество чисел в файле}
procedure InputOfTF (var f: file of real);
var
k: integer;
m: real;
begin
rewrite (f);
for var i:= 1 to random(20) do
begin
m:=random(100,130)/100;
write (f, m);
end;
close (f);
end;

procedure OutputOfTF (f: file of real);
var
m: real;
begin
reset (f);
while not eof(f) do
begin
read (f, m);
write (m,' ');
end;
close (f);
end;

function count (f: file of real): integer;
var
m: real;

begin
result:=0;
reset (f);
while not eof (f) do
begin
read (f,m);
inc (result);
end;
end;


procedure minimal (f: file of real);
var
m, min: real;
x: integer;
begin
min:=100;
reset(f);
while not eof (f) do
begin
read (f,m);
if (m<min) and (not odd(filepos(f))) then min:=m;
end;
writeln;
writeln ('Минимальный элемент, стоящий на четном месте: ',min);
close (f);
writeln ('Сколько раз вписать это значение в конец файла?');
readln (x);
rewrite (f);
for var i:= 1 to x do
write (f, min);
close (f);
end;

begin
assign (f1, 'числа1.txt');
InputOfTF(f1);
OutputOFTF(f1);
writeln;
l:=count(f1);
writeln ('Количество чисел в файле: ',l);
minimal (f1);
outputoftf (f1);
end.
kami_sa вне форума   Ответить с цитированием
Старый 14.01.2018, 18:49   #2
min@y™
Цифровой кот
Профессионал
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Адрес: 1600, пенсильвания-авеню, п.г.т. верхний Вашингтонск, 8126 км от МКАД, от поста ГАИ - налево.
Сообщений: 7,648
Репутация: 2371

icq: 100500
skype: kick-ass
По умолчанию

Цитата:
rewrite - открытие файла для записи с удалением всей информации, внесенной ранее. Тогда как можно сохранить данные и вписать в тот же файл нужное значение?
reset(), seek().
А ещё лучше - TFileStream.
__________________
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума   Ответить с цитированием
Старый 14.01.2018, 18:49   #3
Aleksandr H.
2 the Nation Glory
Профессионал
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Адрес: Wild West Ukraine
Сообщений: 2,400
Репутация: 874

skype: aleksandr.gryb
По умолчанию

Append решает вопросы
__________________
Mailto: media.project@ukr.net
Aleksandr H. вне форума   Ответить с цитированием
Старый 14.01.2018, 18:51   #4
min@y™
Цифровой кот
Профессионал
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Адрес: 1600, пенсильвания-авеню, п.г.т. верхний Вашингтонск, 8126 км от МКАД, от поста ГАИ - налево.
Сообщений: 7,648
Репутация: 2371

icq: 100500
skype: kick-ass
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
Append решает вопросы
не решает.

__________________
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 14.01.2018 в 18:55.
min@y™ вне форума   Ответить с цитированием
Старый 14.01.2018, 19:04   #5
Aleksandr H.
2 the Nation Glory
Профессионал
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Адрес: Wild West Ukraine
Сообщений: 2,400
Репутация: 874

skype: aleksandr.gryb
По умолчанию

да, не решает. беда
__________________
Mailto: media.project@ukr.net
Aleksandr H. вне форума   Ответить с цитированием
Старый 14.01.2018, 19:07   #6
min@y™
Цифровой кот
Профессионал
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Адрес: 1600, пенсильвания-авеню, п.г.т. верхний Вашингтонск, 8126 км от МКАД, от поста ГАИ - налево.
Сообщений: 7,648
Репутация: 2371

icq: 100500
skype: kick-ass
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
да, не решает. беда
пичяль бида огорченье
__________________
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 14.01.2018 в 19:09.
min@y™ вне форума   Ответить с цитированием
Старый 14.01.2018, 19:14   #7
kami_sa
Новичок
 
Регистрация: 12.01.2018
Сообщений: 4
Репутация: 10
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
reset(), seek().
А ещё лучше - TFileStream.
если я правильно понимаю, то reset открывает файл для чтения, ничего нового я туда не впишу, seek - устанавливает указатель на нужную позицию, толку от него? если после rewrite'a уже все удалится? или нет?
А что такое TFileStream? В справке ничего такого нет (пользуюсь PascalABC.NET)
kami_sa вне форума   Ответить с цитированием
Старый 14.01.2018, 19:47   #8
min@y™
Цифровой кот
Профессионал
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Адрес: 1600, пенсильвания-авеню, п.г.т. верхний Вашингтонск, 8126 км от МКАД, от поста ГАИ - налево.
Сообщений: 7,648
Репутация: 2371

icq: 100500
skype: kick-ass
По умолчанию

Цитата:
Сообщение от kami_sa Посмотреть сообщение
если я правильно понимаю, то reset открывает файл для чтения, ничего нового я туда не впишу, seek - устанавливает указатель на нужную позицию, толку от него? если после rewrite'a уже все удалится? или нет?
А что такое TFileStream? В справке ничего такого нет (пользуюсь PascalABC.NET)
Не смотря на то, что я твой паскаль-абц.нет в глаза не видел, мне хватило 30 секунд, чтобы найти ответы на его сайте. У тебя там другой интернет, штоли? Какого хера ваще?!
А про TFileStream имеет смысл узнавать, когда выкинешь свой абц фтопку и поставишь нормальную среду разработки.
Откуда вы ваще такие берётесь с этим АБЦ? Вас там насильно, штоли, заставляют на нём писать? Пытают электрошоком или флюгегехайменом?
__________________
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 14.01.2018 в 19:52.
min@y™ вне форума   Ответить с цитированием
Старый 14.01.2018, 22:02   #9
kami_sa
Новичок
 
Регистрация: 12.01.2018
Сообщений: 4
Репутация: 10
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Не смотря на то, что я твой паскаль-абц.нет в глаза не видел, мне хватило 30 секунд, чтобы найти ответы на его сайте. У тебя там другой интернет, штоли? Какого хера ваще?!
А про TFileStream имеет смысл узнавать, когда выкинешь свой абц фтопку и поставишь нормальную среду разработки.
Откуда вы ваще такие берётесь с этим АБЦ? Вас там насильно, штоли, заставляют на нём писать? Пытают электрошоком или флюгегехайменом?
Мне надо было внимательнее читать про reset. Вышло. Спасибо И да, заставляют чуть ли не под угрозой смерти именно им, благо, только в первом семестре.
kami_sa вне форума   Ответить с цитированием
Старый 14.01.2018, 22:08   #10
min@y™
Цифровой кот
Профессионал
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Адрес: 1600, пенсильвания-авеню, п.г.т. верхний Вашингтонск, 8126 км от МКАД, от поста ГАИ - налево.
Сообщений: 7,648
Репутация: 2371

icq: 100500
skype: kick-ass
По умолчанию

Цитата:
Сообщение от kami_sa Посмотреть сообщение
И да, заставляют чуть ли не под угрозой смерти именно им, благо, только в первом семестре.
сочуйствую... держитесь там.

__________________
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с текстовым и типизированным файлом AlexGet Помощь студентам 0 07.12.2013 13:44
работа с типизированным файлом Alena_897 Паскаль 6 06.01.2012 13:34
работа с типизированным файлом Julila Помощь студентам 1 26.02.2011 00:23
Работа с типизированным файлом на Паскале qwertytol Помощь студентам 0 15.06.2009 18:07


03:13.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru