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

> Таблица рекордов, Не пойму что не пашет
сообщение
Сообщение #1


Новичок
*

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

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


Вот делаю таблицу рекордов (в типизированном файле). Да не могу найти ошибку в алгоритме.
mas-массив типа string;
st-файл типа string.

rocedure Verif(Var F: st;Name,Ochki: String);
{Процедура предназначена для перепроверки рекордов в связи с новым достижением}
Var Points,Nick,A,Nick1,Points1: mas;
S : String;
I,J,Nom,I1,N,Chp : Integer;
Begin
N:=0;
While Not Eof(F) Do {Perezapis' v massiv}
Begin
Read(F,S);
Inc(N);
A[N]:=S;
End;
For I:=1 To N Do
Begin
S:=A[I];
For I1:=1 To Length(S) Do
Begin
Chp:=0;
While Chp=6 Do {Schitka odnoy stroki}
Begin
If S[I1]=' ' Then
Inc(Chp);
If S[I1]<>' ' Then Nick1[I]:=S[I1]+Nick1[I];{Svedeniya uje imeyuschihsya igrokov}
End;
While Chp=5 Do
Begin
If S[I1]=' ' Then
Inc(Chp); {eto ya seychas razrabativayu}
If S[I1]<>' ' Then Points1[I]:=S[I1]+Points1[I];
End; {Smeschenie na odnu stroku}
End;
If Ochki>=Points1[I] Then
Nom:=I;
For J:=1 To N-1 Do
Begin {Zapisivaem uchitivaya izmeneniya}
Nick[J]:=Nick1[J];
Points[J]:=Points1[J];
While J=Nom Do
Begin
Nick[Nom]:=Name;
Points[Nom]:=Ochki;
End;
End;
Rewrite(F);
Reset(F);
For J:=1 To N Do
Begin
S:='';
S:=J+ ' '+Nick[J]+' '+Points(J);
Write(F,S);
End;
Close(F);
End;

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


Новичок
*

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

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


Функция IntToStr действительно хорошо должна работать. Но только должна. Процедуру Str я уже использовал, но эффект тот же-выводятся каракули не многим похожие на цифры. Может быть просто строку нельзя выводить на экран в графическом режиме?
Да, и почему здесь...

Read(F,S);


...выводится ошибка 100(Disk read error).
Очень странно.
А типизированные файлы создаются в Pascal или отдельным алгоритмом?

Сообщение отредактировано: 1234 -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Злостный любитель
*****

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

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


Цитата(1234 @ 8.02.2007 15:18) *

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

Хм, можно я версию скажу? Вы при выводе текста какой шрифт используете? DefaultFont? Он у многих неправильно выводит цифры (даже где-то тема была, в которой человек на это жаловался). Используйте векторные шрифты.
Кстати, я только что дописал chr_edit (предварительная версия, но пока багов не обнаружено). Так что если хотите русифицировать свою программу - могу кинуть русский готический шрифт и сам редактор.


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

Сообщений в этой теме
1234   Таблица рекордов   8.02.2007 0:20
volvo   For J:=1 To N Do Begin …   8.02.2007 0:31
1234   Функция IntToStr действительно хорошо должна работ…   8.02.2007 19:18
TarasBer   Функция IntToStr действительно хорошо должна рабо…   9.02.2007 0:07
volvo   А ты что, где-то показал, КАК ты выводишь строку н…   8.02.2007 19:33
1234   Вывожу я строку процедурой OutTextXY. Но тут понял…   8.02.2007 19:47
1234   Да, здравствуйте! Скиньнте,пожалуйста русский …   9.02.2007 0:17
TarasBer   Да, здравствуйте! Скиньнте,пожалуйста русский…   9.02.2007 0:33
volvo   Опять изобретение велосипедов... Шрифты русифициро…   9.02.2007 0:37
TarasBer   Опять изобретение велосипедов... Шрифты русифицир…   9.02.2007 1:44
Altair   TarasBer, фантастически удобный редактор! В ка…   9.02.2007 14:15
1234   Мой вопрос повис в воздухе. А тема превратилась в …   9.02.2007 16:46
volvo   Прекрасно... Значит, ты менял код (на обработку те…   9.02.2007 17:24
1234   В самом начале: A[N]:=S;   9.02.2007 17:36
volvo   {$TELEPATHY ON} Если ты работаешь с текстовы…   9.02.2007 18:44
1234   Да, видимо что-то не то. А время поджимает. Поэтом…   9.02.2007 18:56
volvo   :no1: Не пойдет... У меня - встречное предложение…   9.02.2007 20:11
1234   Да я уже не успеваю. Поэтому придётся без этих рек…   9.02.2007 21:06
TarasBer   Да я уже не успеваю. Поэтому придётся без этих ре…   10.02.2007 2:40


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

 





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