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

> Таблица рекордов, Не пойму что не пашет
1234
сообщение 7.02.2007 20:20
Сообщение #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 
 К началу страницы 
+ Ответить 

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


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

 

- Текстовая версия 26.07.2025 2:04
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"