Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
1

Конвертация строк (приведение русских и английских букв к верхнему регистру)

27.12.2014, 23:24. Просмотров 1366. Ответов 2
Метки нет (Все метки)


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


Pascal
1
2
3
4
5
6
7
8
9
procedure UpCaseRus(var s:string);{приведение к верхнему регистру русских букв}
{русские в верхний регистр}
var i:integer;
begin
for i:=1 to length(s) do
if s[i] in ['а'..'п'] then s[i]:=chr(ord(s[i])-32)
else if s[i] in ['р'..'я'] then s[i]:=chr(ord(s[i])-80)
else if s[i]='ё' then s[i]:='Ё';
end;
Я прописала в программе данная процедура в виде функции, то есть следующим образом:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
function UpCase866(const aStr : String) : String;
var
  S : String;
  i : Integer;
begin
  S := aStr;
  for i := 1 to Length(S) do
    case S[i] of
      'а'..'п': S[i] := Chr(Ord(S[i]) - 32);
      'р'..'я': S[i] := Chr(Ord(S[i]) - 80);
      'ё'     : S[i] := 'Ё';
      else
        S[i] := UpCase(S[i]);
    end;
  UpCase866 := S;
end;
Но как мне сказали на форуме, данная функция UpCase866 подходит для Turbo Pascal. А в Pascal ABC её нужно прописывать иначе и что там другая функция. Мой вопрос состоит в том, что каким образом осуществить эту операцию на Паскаль АВС? Заранее всем спасибо за советы!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.12.2014, 23:24
Ответы с готовыми решениями:

Множества и строки. Привести гласные буквы к верхнему регистру, согласные к нижнему
Спасибо Огромное) Теперь буду разбираться)

Приведение матрицы к верхнему треугольному виду.
Методом Гаусса с выбором главного элемента по столбцам (приведение матрицы к верхнему треугольному...

Запрос на приведение первых букв наименований к верхнему регистру, а остальных - к нижнему
В таблице записаны регионы и города - все в верхнем регистре. Как написать запрос, чтобы перевести...

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

2
3450 / 2388 / 2135
Регистрация: 04.12.2011
Сообщений: 3,965
28.12.2014, 12:49 2
Цитата Сообщение от Ella17 Посмотреть сообщение
каким образом осуществить эту операцию на Паскаль АВС?
Паскаль ABC корректно работает с кириллицей, то есть для строки, состоящей из русских и (или) английских букв будет достаточно следующее:
Pascal
1
2
for i := 1 to Length(S) do
  S[i] := UpCase(S[i]);
1
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
28.12.2014, 12:58  [ТС] 3
ermolay, Спасибо Вам, получилось!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.12.2014, 12:58

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Перевод всех букв строки к верхнему регистру
нужно создать программу для перевода маленьких букв английского алфавита в большие

Ввести с клавиатуры несколько строк, преобразовать их к верхнему регистру. признак конца finish
Ввести с клавиатуры несколько строк, преобразовать их к верхнему регистру. признаком конца ввода...

Не работает приведение букв к нижнему регистру
Необходимо было написать программу для перевода слов. Столкнулись с тем, что если слово начинается...

Разделение русских и английских букв
Написать функцию разделения русских и английских букв в отдельные строки. #include <iostream>...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.