Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 11.04.2012, 23:46   #1 (permalink)
Дарюшка
Новичок
 
Регистрация: 11.04.2012
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите пожалуйста решить задачу на строки по Паскалю.

Дана строка. преобразовать в ней все строчные буквы(как латинские, так и русские) в прописные, а прописные- в строчные.
Заранее спасибо.
Дарюшка вне форума   Ответить с цитированием

Старый 11.04.2012, 23:46
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Раньше на форуме подобные обсуждения уже создавались, можете обратить внимание

Пожалуйста, помогите решить задачу на Паскале
Помогите, пожалуйста, решить задачу в qbasic
Помогите пожалуйста исправить задачу на строки, Паскаль

Старый 12.04.2012, 10:28   #2 (permalink)
Vladimir_S
Специалист
 
Аватар для Vladimir_S
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 25,455
Сказал(а) спасибо: 258
Поблагодарили 476 раз(а) в 151 сообщениях
Репутация: 82625
По умолчанию

Цитата:
Сообщение от Дарюшка Посмотреть сообщение
Дана строка. преобразовать в ней все строчные буквы(как латинские, так и русские) в прописные, а прописные- в строчные.
Заранее спасибо.
Здесь могу помочь ограниченно: без никаких "так и русские" - только латиница. Потому что кодировка кириллицы нестандартизована, есть куча таблиц, у DOS (которым я пользуюсь) - своя, у Windows - своя, а кто-то вообще в UTF сидит, в общем, извините, заморачиваться с кириллицей никакого желания нет. Хотите - можете сами, исходя из своей кодировки, добавить в программу недостающие строки по тому же принципу сдвига значений кодов символов. А по латинице - пожалуйста:
Код:
var
 S,S1:string;
 i:byte;
begin
 writeln('String:');
 Readln(S);
 S1:='';
 For i:=1 to Length(S) do
  begin
   If (Ord(S[i])>64) and (Ord(S[i])<91) then S1:=S1+Chr(Ord(S[i])+32)
   else
   If (Ord(S[i])>96) and (Ord(S[i])<123) then S1:=S1+Chr(Ord(S[i])-32)
   else
   S1:=S1+S[i];
  end;
 Writeln(S1);
 Readln
End.
__________________
With Mozilla Firefox - straight to communism!
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 21:38.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.