|
0 / 0 / 0
Регистрация: 05.12.2019
Сообщений: 4
|
|
Разработать алгоритм преобразования введенной строки к верхнему регистру05.12.2019, 16:03. Показов 2940. Ответов 49
Метки нет (Все метки)
!!!!!
Разработать алгоритм преобразования введенной строки к верхнему регистру . Прошу у вас помощи пробовал через Edit2.Text:=AnsiUpperCase(Edit1.Text); НО нужно именно через Char ,у самого не получается
0
|
|
| 05.12.2019, 16:03 | |
|
Ответы с готовыми решениями:
49
Разработать программу преобразования введенной с клавиатуры строки к верхнему регистру Разработать функцию, которая преобразует символы строки к верхнему или нижнему регистру |
|
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,498
|
|
| 07.12.2019, 14:52 | |
|
0
|
|
|
Модератор
|
||||||
| 07.12.2019, 15:28 | ||||||
|
Строго говоря, остальное можно собрать руками по приведенной табличке кодовой страницы.
1
|
||||||
|
Заблокирован
|
|||||||||||
| 07.12.2019, 15:29 | |||||||||||
|
Так там она и есть если перевод.
Средняя часть всё case и есть преобразование. Всё то же самое потом написали другие, но с буквами. И опять же... код красивый но бесполезные по времязатратам. Функция дикримент, это функция. И внутри у неё всё то же самое сложение. Зачем её вызывать, когда проще сделать сложение. Тем более если использовать всё время явное преобразование. Это же сколько надо её вызвать? То же самое с верхним регистром. Символов в верхнем регистре намного меньше. И выгоднее их привести к нижнему. Да в простых прогах это незаметно. Что касается таблицы то очень просто. Таблицу создали. А если надо получить код регистронезависимого символа по этой таблице то
Хотя вроде эта запись в некорых местах выдаёт ошибку, мол массив не может быть аргументов и не поманают никакие указатели. Но в любом случае луше сначала прочитать значение в перменную и работать с ней.
0
|
|||||||||||
|
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,498
|
||||||
| 07.12.2019, 15:41 | ||||||
|
Если нужна максимальная скорость, то можно по таблице так менять регистр:
0
|
||||||
|
Модератор
|
|||
| 07.12.2019, 15:46 | |||
|
Ну а табличку этой обработкой можете и построить, особенно, переписав для s: PAnsiChar. Добавлено через 3 минуты Хотя, если речь про статистику обычного текста, а не про мощность алфавита, то да, наверное операций записи в память будет действительно меньше.
0
|
|||
|
Заблокирован
|
|
| 07.12.2019, 15:48 | |
|
Но основная ошибка что вы портите строку.
Зачем её всю преобразовывать? Зачем брать из строки сивол, преобразоывать и писать его на место? Это что строку перевели в нужный регистр а потом пользоватся? Делать второй проход? И при том что оригинал испорчен Такого нельзя делать никогда.
0
|
|
|
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,498
|
|
| 07.12.2019, 15:53 | |
|
0
|
|
|
Заблокирован
|
|||||||||
| 07.12.2019, 16:06 | |||||||||
|
Ассемблер или чём другом. Это функция и в любом случае идёт расход ресурсов на её вызов. Если вы заметили я сделал проще. Просто читаю данные из таблицы. Это намного быстрее. Тем более если используется юникод Я делал на своей функции поиска проверку с разными видами преобразований. Таблица оказалась самым эффективным. Вы будете продолжать меня унижать? Видимо на модераторов правила не распространяются. Вам я даже минус не могу поставить за ваше оскорбление. Добавлено через 1 минуту Добавлено через 2 минуты Смотри сам
Добавлено через 4 минуты Вы хотите сказать что в тексте больших и маленьких букв поровну и не стоит заморачиваться в какую сторону переводить?
0
|
|||||||||
|
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,498
|
|
| 07.12.2019, 16:08 | |
|
Lorrrd, если нужен оригинал, то просто сделай копию. Часто оригинал строки далее не нужен, как здесь, зачем его зря копировать, если он будет удалён компилятором?
0
|
|
|
Заблокирован
|
||
| 07.12.2019, 16:29 | ||
|
Вы хотите сказать. Что у вас есть текст, вы в нём производите поиск, для чего приводите весь к одному регистру. То бишь вам текст больше не нужен. И потом возвращаетесь в начало и начинаете сам поиск. А я предлагаю делать всё в один проход, не портя оригинального текста, а просто читая символ, налету переводя его в регистронезависимый используя таблицу или просто функцией преобразования и это вы называете в корне неправильным. При этом я оказываюсь в дураках. Ну хорошо, я не прав в своих подходах к программированию. Так докажите это. Так нет же, меня пинают модераторы а потом подключаются все остальные. Я пытаюсь возразить а меня гонять минусам в бан. Видимо вам плевать на программирование. Здесь не программисты а гопники развлечься собрались.
0
|
||
|
Модератор
|
||
| 07.12.2019, 17:50 | ||
|
0
|
||
|
Заблокирован
|
|
| 07.12.2019, 18:36 | |
|
D1973,
Вообще это вас следовало бы гнать из модератров. Это у вас обидки, и вы их вымещаете не меня пользуясь своим положением. Если это форум гопников то его нужно закрыть. А я сюда пришёл помогать тем, кто действительно в этом нуждается. Я не гений и ни разу этого не сказал, а только повторил ваши же слова. И это был сарказм. У нас с вами разные весовые категории это да. И лезете из все модератаров ко мне в основном почему-то только вы и подставляете AzAtom, поскольку всё идёт только после моего обращения к нему. И в этот раз то же. Вы тандемом работаете? Он провоцирует а вы наезжаете? Тут все хором говорят что всем им нарушать правила можно, а мне нельзя. Потому что я плохой. И что я такого опять то натворил? Отвечал на провокации, санкционированные лично вами? Да, я вижу какие вы тут программисты. Рейтинги поднимете друг другу за всякую чушь. Вот как несколько постов выше. Модератор поумничал, написав немного по-другому мой же код, но при этом сделал ошибку. И ему сразу же за это плюс влепили. На меня гадость написали и автору гадости плюс сразу. Вот так у вас рейтинги растут. Кто на кого обижаться должен? Кто кого задолбал? Видимо не я один. Вас долбают те кто умнее вас. Я уже пять человек видел заблокированных. А их намного больше. А писали они очень интересные вещи и приводили полезные примеры. А вы пишите чушь и подставляете тех, кто пришёл за помощью и тех кто хочет помочь. Далеко идти не надо. Вот только что. Я делал одному человеку проект. И просто чтобы не писать самому решил воспользоваться выложенным на этом же форумом кодом. Я случайно нашёл тему с вопросом. В нём модератор дал ссылку на тему. Я туда вошёл, там код. Восторженные отзывы на него и плюсы. Я применил его, и дал на проверку клиенту. Тот завёл и бац - ошибка. Я проверять стал. Ошибку нашёл. Думал лоханулся не проверил что сделано по-другому. Проверил код из темы. Бац - ошибка. На одних данных нет, на других есть. Тот кто писал херню сморозил. Индексы в массиве поменял местами. Забыл очевидно что такое многомерный массив. А клиент к проекту охладел нашёл другой проект и теперь просит чтоб вставить в него то, что этот же код по идее должен был делать. Вот так ваши гении меня подставили. Так кто кого задолбал? И в каждых ваших советах тьма недочётов, как в этой то теме. Простой код и то написать не можете. Я вас задолбал? Да ваш форум разогнать надо за такие вещи. Вопрос не в том что я делаю здесь, а что вы делаете в интернете. А вас персонально надо гнать первым.
0
|
|
|
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,498
|
||
| 07.12.2019, 18:52 | ||
![]() Конкретно это - "и это вы называете в корне неправильным" - я так не называл. Поэтому тот пост оставил было без комментариев. Но нет, надо опять меня втягивать в словесные упражнения... А вот это "ему поставили плюс, а мне не поставили" это вообще детский сад. Тебе сколько лет?
0
|
||
|
561 / 230 / 88
Регистрация: 11.07.2015
Сообщений: 817
|
||
| 07.12.2019, 18:55 | ||
|
0
|
||
|
Заблокирован
|
||
| 07.12.2019, 19:30 | ||
|
UR1004SWL,
А за что плюс? Там же ошибка. Меня за меньшее здесь съедают. Чем вас мой код не устроил? Обратились бы ко мне, я бы вам сделал из моего кода всё что вы хотели. Там же написано было, что можно переделать. Вы видимо вообще мой пост не прочитали? А почему? Я Нарушитель, в глубоком минусе. А он модератор с плюсами. Пользуйтесь, пожалуйста. Если вам хочется попортить строку - пожалуйста. Вообще по всем мыслимым правилам полагается не писать в ту же строку, а делать отдельную. Временную. Для работы. Это пишут во всех книгах по программированию. А вы книг не читаете. Вы читаете посты модераторов у которых куча плюсов, да и то липовых. Добавлено через 25 минут И твой любимый модератор наезжает на меня после того как я наехал на твой наезд. Ты опять сделал полость. "ему поставили плюс, а мне не поставили" Я такого никогда не писал. Я писал почему ему поставили плюс. Про себя я не писал. Хорошо, почему не поставили плюс тому человеку кто эту ошибку исправил? А почему вообще среди вас не нашлось гения который бы написал ё: s[i]:='Ё'; Не догадаться было? На меня гадость написали и автору гадости сразу плюс. Интересно - кто? Я даже знаю. Твой напрник-модератор, который мня гнобит за то что я на него плюю и его это уязвляет. А ты провокатор и ничуть не лучше их всех. Поскольку всё происходит с твоей подачи. И по их словам ты олицетворяешь весь форум в своём лице. Тебе не стыдно? Ты сам себе не противен?
0
|
||
|
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,498
|
||
| 07.12.2019, 19:38 | ||
|
0
|
||
|
Заблокирован
|
|
| 07.12.2019, 20:05 | |
|
AzAtom,
Крутишься? Науськиваешь своего дружка-модера? Заметь, если кто другой что напишет на него толпа не валит и из себя его не выводит. И модеры не ходят за ним табуном. Это я такой нехороший. Ну развлекуха то какая. Довести меня. А потом жёстоко наказать. Заметь, тебя в этой теме и близко не было. Чего сунулся? И заметь, сразу с наезда на меня.
0
|
|
|
Модератор
|
||||||||||||||
| 07.12.2019, 21:54 | ||||||||||||||
Тем не менее, табличку переходов можно залить в константу, а можно проинициализировать при старте тем же самым кодом. В сухом остатке правила по переводу в верхний регистр для кодировки Windows-1251 таковы:
0
|
||||||||||||||
|
Заблокирован
|
|
| 07.12.2019, 23:58 | |
|
Может быть и так.
Пусть выбирает заказчик. Добавлено через 3 минуты Что либо говорить нет смысла. Если меня хотят выставить дураком, то обязательно сделают, несмотря на то что сделал. Обида и зависть опасные болезни. А здесь им подвержены буквально все.
0
|
|
|
Модератор
|
|
| 08.12.2019, 00:06 | |
|
Lorrrd,
Вы меня опять не поняли, повторю в третий раз: Dec() в исходнике не является вызовом процедуры в буквальном смысле, хотя и синтаксически выглядит как вызов процедуры. Dec() в исходнике компилируется либо непосредственно в инструкцию DEC хх, если второй аргумент опущен или 1, либо в SUB xx,imm/reg. Это универсальный код. Надеюсь, с этим разобрались. >Как вы будете определять что нужно а что не нужно преобразовать, что у вас буква а что у вас другой символ или цифра? По три сдвига регистра вправо и влево на 4, четыре обращения в таблицу перекодировки. Но это уже не исключено, что на одних только выражениях паскаля возможно и не получится выписать оптимально (хотя попробую, интересно, на что хватит оптимизатора).
0
|
|
| 08.12.2019, 00:06 | |
|
Преобразования символов к нижнему и верхнему регистру Работа со строками и скобками, преобразования к верхнему регистру. Преобразование строки к верхнему регистру Функция: преобразование строки к верхнему регистру
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
|
День 5 из 28: Codex подсказывает следующий запрос
and_y87 12.10.2026
9 октября 2026 года OpenAI запустила бету Composer predictions — подсказок следующего сообщения в текущем диалоге Codex. Это помощь с формулировкой запроса, а не автоматическое продолжение задачи.
. . .
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|