На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
В этом разделе можно создавать темы, которые относятся к поколению 32-битных компиляторов.
Здесь решаются вопросы портирования кода из старого доброго Турбо Паскаля в FPC, TMT, VP, GPC компиляторы, а также особенностей программирования на них для Windows/Linux и других ОС.
Указывайте тип компилятора, его версию, а также платформу (Windows/Linux/..) компиляции, другими словами, Target.
Модераторы: volvo877
  
> Регистронезависимый поиск
    Имеется код поиска с независимым регистром:
    ExpandedWrap disabled
       begin
           clrscr;
              writeln ('Vvedite psevdonim personazha: ');
              readln (poisk1);
              der:= length (poisk1);
              assign (p, 'C:\FPC\2.6.0\bin\i386-win32\spisok.txt');
              reset (p);
              while not eof (p) do
                 begin
                 read (p, heros);
                 poisk2:= copy(heros.psevdonim,1,der);
                 if (upcase(poisk1)=upcase(poisk2)) then
                   begin
                       writeln ('Psevdonim: ', heros.psevdonim);
                       writeln ('God poyavleniya: ', heros.god_p);
                       writeln ('Nastoyaschee imya: ', heros.n_imya);
                       writeln ('Poziciya: ', heros.poziciya);
                       writeln ('Rost: ', heros.rost);
                       writeln ('Ves: ', heros.ves);
                       writeln ('Cvet glaz: ', heros.glaza);
                   writeln ('Cvet volos: ', heros.volosi);
               writeln ('Grazhdanstvo: ', heros.grazhdanstvo);
                       writeln ('Rod zanyatiy: ', heros.rod_zan);
                       writeln ('Snaryazhenie: ', heros.snaryazhenie);
                       writeln ('Sposobnosti: ', heros.sposobnosti);
                    end;
                 end;
              close (p);
              readln;
           end;
           end;

    как сделать, чтобы программа искала названия с кириллицей?
    Сообщение отредактировано: volvo877 -
      AnsiUpperCase вместо UpCase
        паскаль ругается... нет такого индетификатора
          Паскаль может и ругается, а если используется FPC (да еще и подключить SysUtils в Uses) - то ругаться не будет.
            подключил... не работает... ошибок не дает, но в поиск ввожу название на русском, не ищет

            Добавлено
            может я не правильно подключаю... в начале своей программы есть модуль crt, рядом с ним я прописал SysUtils... я правильно сделал??? если нет, то как правильно
              Можешь заархивировать и присоединить сюда файл spisok.txt? Важно, в какой кодировке он сохранён.
                ВОТ ФАЙЛ
                Прикреплённый файлПрикреплённый файлspisok.txt (5,5 Кбайт, скачиваний: 629)
                  Ну вот, видишь. У тебя файл - в DOS-овской кодировке, CP866, это не ANSI, а OEM-кодировка. ANSI - это виндовая 1251. Тебе надо либо сначала переводить из 866 в, скажем, UTF8, и только потом - в верхний регистр, либо вообще самому писать функцию перевода текста в кодировке 866 в верхний регистр (посмотри в поиске по разделу Паскаль, наверняка такое выкладывалось уже). При использовании Лазаруса можно воспользоваться функцией LConvEncoding.CP866ToUTF8 + LCLProc.UTF8UpperCase
                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                  0 пользователей:


                  Рейтинг@Mail.ru
                  [ Script execution time: 0,0345 ]   [ 19 queries used ]   [ Generated: 28.03.24, 14:46 GMT ]