Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
0 / 0 / 1
Регистрация: 04.10.2008
Сообщений: 64

Как записать типизированый файл в паскале

15.12.2008, 13:57. Показов 3217. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста... объясните, как записать типизированый файл в паскале, что бы он потом по-человечески открывался в текстовом документе, даже если это массив чисел...
моя задача:Дан файл вещественных чисел. Найти наибольшее количество локальных экстремумов (минимумов и максимумов- чисел, соседи которых меньше(это будет лок.максимум) или больше (это будет минимум) данного числа...)
я написала так:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
program proba1; {imya programmy}
uses crt;     {modul voda/vyvoda}
type ff=file of real; {deklaracija tipa fajla veshestvennyh 4isel}
var                            {obyavlenie peremennyh}
m:array[1..100] of real; f:ff; i,k,n,t:byte;
begin     {telo programmy}
clrscr;   {o4istka ekrana}
write('vvedite koli4estvo cyfr, kotorye vy hotite pomestit v fajle-> '); {ustanavluem ko - vo cyfr v fajle}
read(n);
assign(f,'c:\1.txt'); {fajlovaja peremennaja svyazyvaetsya s imenem fajla}
rewrite(f);   {otkryvaem fajl dlya zapisi}
for i:=1 to n do   {vvodim dannye}
begin
write('vvedite cyfru-> ');
readln(m[i]);
write(f,m[i]);
end;
close(f);  {zakryvaem fajl}
reset(f);   {otkryvaem fajl dlya 4tenija}
while not eof(f) do       {poka ne nastupil konec fajla}
begin             {vypolnyaem}
read(f,m[i]); {4itaem sledujushuju komponentu fajla}
write(f,m[i]);            {vyvodim na ekran}
end;
close(f);       {zakryvaem fajl}
assign(f,'c:\1.txt');{fajlovaja peremennaja svyazyvaetsya s imenem fajla}
reset(f); {otkryvaem fajl dlya 4tenija}
k:=0; t:=0; {s4et4iki obnulyaem}
for i:=2 to n-1 do    {so 2 po predposlednij elementy vypolnyaem}
begin
if(m[i]<m[i-1]) and (m[i]<m[i+1]) then inc(k); {esli element menshyj po otnosheniju k sosedyam, to k min +1}
if(m[i]>m[i-1]) and (m[i]>m[i+1]) then  inc(t);
end;
write('koli4estvo lokalnyh min= ', k,', lokalnyh max= ',t);{vyvod rezyltata}
readln;
end.
Но открывая сохраненный файл в указанном месте(диск с) я получаю различные краказябли, в то время, как записанный таким образом текст в виде текстового файла открываеться нормально и в текстовике и в консоле паскаля... Объясните неопытному чайнику...
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.12.2008, 13:57
Ответы с готовыми решениями:

Ввод - вывод в типизированый файл используя процедуры как исправить
Ввод - вывод в типизированый файл используя процедуры Во время выполнения показывает ошибку 103 Помогите исправить. Program...

Типизированый файл
Помогите разработать программу, которая должна обеспечить выполнение следующих функций: формирование типизованного файла со структурой в...

не типизированый файл
Создать файл, компоненты (количество &lt;=9) которого являются вещественными числами. После создания файла поменять местами значения...

5
 Аватар для lexus_ilia
3067 / 727 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
16.12.2008, 01:06
Взято Отсюда
При записи в типизированный файл данные автоматически конвертируются в такой вид и записываются. При чтении они автоматически загружаются в память в переменную, в которую мы читали. Например если файл состоит из чисел типа integer, то при записи в файл одной такой записи в нем добавится два байта - эти два байта и являются числом integer в машинном представлении. При чтении из файла такой записи в переменную типа integer данные должным образом перенесутся в эту переменную. можно попробовать записать в файл переменную типа word (которая тоже занимает 2 байта), а потом прочесть ее из файла как переменную типа integer, и это у нас получится !! Но при некоторых значениях этого числа данные будут искажены, так как у integer другой диапазон значений по сравнению с word. Есть исключения на тип данных записей, но они очевидные - например запись не может быть типа - file, или text, то есть файлового типа. Ведь файл не может состоять из файлов.
Учите мат. часть...
0
 Аватар для Иван Ридаль
2 / 2 / 0
Регистрация: 15.12.2008
Сообщений: 37
16.12.2008, 09:56
В паскале кодировка ASCII, а файл наверняка записан в кодировке Юникод.
0
0 / 0 / 1
Регистрация: 04.10.2008
Сообщений: 64
16.12.2008, 10:50  [ТС]
Цитата Сообщение от Иван Ридаль Посмотреть сообщение
В паскале кодировка ASCII, а файл наверняка записан в кодировке Юникод.
как поменять кодировку?
0
YuraPascal2
16.12.2008, 11:23
Во первых: Когда ты первый раз открываеш файл для чтения (после созлания) ты почемуто при выводе на экран пишеш "write(f,m[i]);" - что уже ошибка. получается ты выводиш не на экран а пытаешся записать m[i] в файл f - он же открыт для чтения! Т.е. перепиши на "write(m[i]);".
Во вторых: Зачем ты сново открываеш файл для чтения, если ты с него больше не чего не считываеш?

Если какието еще будут вопросы или нужна помощь, пиши на yura30682@rambler.ru
 Аватар для Иван Ридаль
2 / 2 / 0
Регистрация: 15.12.2008
Сообщений: 37
16.12.2008, 13:31
Цитата Сообщение от YuraPascal2 Посмотреть сообщение
Во первых: Когда ты первый раз открываеш файл для чтения (после созлания) ты почемуто при выводе на экран пишеш "write(f,m[i]);" - что уже ошибка. получается ты выводиш не на экран а пытаешся записать m[i] в файл f - он же открыт для чтения! Т.е. перепиши на "write(m[i]);".
Во вторых: Зачем ты сново открываеш файл для чтения, если ты с него больше не чего не считываеш?

Если какието еще будут вопросы или нужна помощь, пиши на yura30682@rambler.ru
Неправда, f тоже нужно писать!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.12.2008, 13:31
Помогаю со студенческими работами здесь

Типизированый файл данных
Итак,имеется типизированый файл даных.Нужно сделать вывод минимальной и максимальной цены по групе инструментов.Окно такого вида,как на...

Типизированый файл... Основы
&quot;в типизированном файле содержится информация о результатах соревнования, вывести на экран список спортсменов, занявших призовые...

Запись в типизированый файл
Помогите найти ошибку. Ругается там где пытаюсь записать в файл, говорит нельзя преобразовать integer к ved. program fail_zap; uses...

Запись в типизированый файл
Нужно сделать запись в типизированый файл, обновления данных с определенной позиции. var f:file of integer; value,i:integer; ...

Типизированый файл: провека на пустоту
assign(a,'1.txt'); reset(a); k:=0; read(a,k); if k=0 then begin writeln('Пустой файл'); readln; exit; end; end.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru