![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() ![]() |
![]() |
Frozen83 |
![]() ![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Люди...помогите...дали мне такое задания для типовика ...озвучиваю: Преобразовать заголовки к верхнему регистру, используя русский и латинский регистры.
Ума не приложу, как делать, а надо. Жду помощи. |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Frozen83
А конкретнее? Это нужно в Паскале или в Дельфи? Что за заголовки? |
Frozen83 |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Нужно в Pascale. А насчет какие заголовки...ммм...не знаю...у меня на руках голое задания...
|
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Frozen83
Латинские символы строки преобразуются в верхний регистр элементарно при помощи ф-ии UpCase(Ch) - то есть пробегаешь по всей строке и меняешь s[i] на UpCase(s[i])... А вот кириллица - будет всегда привязана к кодировке. |
Frozen83 |
![]()
Сообщение
#5
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Угу...тока вот я понять не могу никак...что это значит преобразовать к верхнему регистру? Какой будет результат после того как я поменяю s[i] на UpCase(s[i])... ?
|
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Frozen83
Запусти эту программу: Код var s: string; i: byte; begin readln(s); { допустим, 'start' } for i := 1 to length(s) do s[i] := upcase(s[i]); writeln(s); {'start' поменяется на 'START'} end. |
Frozen83 |
![]()
Сообщение
#7
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Пасибки :-)
|
Frozen83 |
![]()
Сообщение
#8
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Все же , как сделать если русские буквы надо преобразовать к верхнему регистру. Так думаю можно массив создать русского алфавита. Не понимаю как нужно определять латинская буква на входе или русская. Мне бы прогу ...
|
volvo |
![]()
Сообщение
#9
|
Гость ![]() |
Frozen83
А самому подумать? Никак? Код Function UpperString(s: String): String; Var i: Byte; Begin For i := 1 To Length(s) Do If s[i] In ['a'..'z'] Then s[i] := UpCase(s[i]) Else If s[i] In ['а'..'п', 'р'..'я'] Then Begin { Если пришли сюда, то буквы - русские. Добавляй свой код по переводу кириллицы в верхний регистр } End; UpperString := s; End; Сообщение отредактировано: volvo - 26.11.2004 12:05 |
Altair |
![]()
Сообщение
#10
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Вот процедура:
Код Function UpStr(S:String):String; {перевод строки в верхний регистр} Var I:Byte; Begin For I:=1 To ORD(S[0]) Do Begin Case S[I] Of 'a'..'z':S[I]:=Chr(Ord(S[I])-$20); 'а'..'п':S[I]:=Chr(Ord(S[I])-$20); 'р'..'я':S[I]:=Chr(Ord(S[I])-$50) End End; UpStr:=S End; Предпочитаю пользовыаться всегда ей, она САМАЯ быстрая. Взято из хакерской проги для взлома PWL виндовса, 10 лет назад! так что это раритет! ![]() ![]() -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
![]() ![]() |
![]() |
Текстовая версия | 28.07.2025 3:09 |