Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.03.2009, 13:49   #1
Fed0r
 
Регистрация: 19.02.2009
Сообщений: 8
Стрелка задачка с текстовым файлом..

С помощью текстового редактора QC создать файл, содержащий текст, длина которого не превышает 700 символов (длина сроки текста не должна превыашть 70 символов).
Имя файла должно иметь расширение DAT.
Написть программу, которая:
1)выводит текст на экран дисплея;
2)выводит текст на экран дисплея еще раз, заменяя в заданном слове (слово вводить с клавиатуры) строчные буквы прописными.

вот такое задание. с первым заданием конечно без проблем.. со вторым никак... кто может помогите плиз)
Fed0r вне форума Ответить с цитированием
Старый 08.03.2009, 13:58   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Если слово на латинице, то используйте UPCASE():
Код:
Function UpCase(C: char): Char
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 08.03.2009, 17:02   #3
Fed0r
 
Регистрация: 19.02.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Sazary Посмотреть сообщение
Если слово на латинице, то используйте UPCASE():
Код:
Function UpCase(C: char): Char
не осознал...
Fed0r вне форума Ответить с цитированием
Старый 08.03.2009, 17:16   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Функция возвращает букву, указанную в аргументе, в верхнем регистре.
Пример:
Код:
uses crt;
var
s : string;
i : integer;
begin
clrscr;
s := 'hello';
for i:=1 to length(s) do
 write(upcase(s[i]));
readln
end.
А вообще можете прочитать про нее в каком-нибудь учебнике или справочнике.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 08.03.2009, 18:00   #5
Fed0r
 
Регистрация: 19.02.2009
Сообщений: 8
По умолчанию

спасибо. про эту функцию не знал..
сделал бы по другом чуть =) через chr(ord(s[i])-32)
меня больше интересует как сделать так что бы одно слово из текста введенное с клавиатуры было написано верхним регистром =)
т.е.
к примеру текст "They have invited many people to the party"
к примеру мы хотим что бы слово many было написано большими буквами. вводим с клавы "many" и программа выводит на экран "They have invited MANY people to the party"

вот я не догоняю как это сделать...
Fed0r вне форума Ответить с цитированием
Старый 08.03.2009, 18:45   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

так, если в строке нужное слово встречается ОДИН раз (и уже написана функция UpperCase(s:string):
Код:
Readln(MatchWord);
if Pos(MatchWord, s)>0 then begin
  P1 := Pos(MatchWord, s);
  WriteLn(Copy(s,1,P1-1), UpperCase(Copy(s,p1,length(MatchWord))), Copy(s,P1+length(MatchWord),255));
end
else
  WriteLn('Заданное слово отсутствует в строке...');
Serge_Bliznykov вне форума Ответить с цитированием
Старый 08.03.2009, 18:53   #7
AlenkaM
 
Регистрация: 08.03.2009
Сообщений: 9
По умолчанию

Привет, мальчики! Извините, что вмешиваюсь. Просто хотелось бы поделиться своей идеей )
Сначала в заданной строке ищешь то слово, которое тебе нужно преобразовать:
n:= pos (s, str);
s - это нужное слово
str - заданная строка
n - начало слова в строке
А потом уже преобразуешь конкретно это слово так, как тебе объяснял SAZARY:
for i:= length(str) to length(s)+n-1 do
str[i]:= upCase(str[i]);
И всё. А дальше выводишь строку в файл или на экран (по желанию)
AlenkaM вне форума Ответить с цитированием
Старый 08.03.2009, 19:31   #8
Fed0r
 
Регистрация: 19.02.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
так, если в строке нужное слово встречается ОДИН раз (и уже написана функция UpperCase(s:string):
Код:
Readln(MatchWord);
if Pos(MatchWord, s)>0 then begin
  P1 := Pos(MatchWord, s);
  WriteLn(Copy(s,1,P1-1), UpperCase(Copy(s,p1,length(MatchWord))), Copy(s,P1+length(MatchWord),255));
end
else
  WriteLn('Заданное слово отсутствует в строке...');
а каких типов каждый идентификатор? =)

Цитата:
Сообщение от AlenkaM Посмотреть сообщение
Привет, мальчики! Извините, что вмешиваюсь. Просто хотелось бы поделиться своей идеей )
Сначала в заданной строке ищешь то слово, которое тебе нужно преобразовать:
n:= pos (s, str);
s - это нужное слово
str - заданная строка
n - начало слова в строке
А потом уже преобразуешь конкретно это слово так, как тебе объяснял SAZARY:
for i:= length(str) to length(s)+n-1 do
str[i]:= upCase(str[i]);
И всё. А дальше выводишь строку в файл или на экран (по желанию)
ничего. спасибо =) но я все равно мало что понимаю(
з.ы. с праздником =)
Fed0r вне форума Ответить с цитированием
Старый 08.03.2009, 19:41   #9
AlenkaM
 
Регистрация: 08.03.2009
Сообщений: 9
По умолчанию

А что конкретно тебе не понятно? Я просто на олимпиады по инфе хожу. Может, смогу чем-то помочь?
P.S. Спасибо за поздравление ))
AlenkaM вне форума Ответить с цитированием
Старый 08.03.2009, 19:58   #10
Fed0r
 
Регистрация: 19.02.2009
Сообщений: 8
По умолчанию

что такое pos(), каких типы у идентификаторов? =)
з.ы. добавь в асю пожалуйста. так проще будет)
Fed0r вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с текстовым файлом simka007 Помощь студентам 7 06.02.2009 14:21
Работа с текстовым файлом GazimagomedovM Помощь студентам 12 17.07.2008 18:24
Работа с текстовым файлом Vasya Помощь студентам 28 24.01.2008 01:15
Работа с текстовым файлом nataly_ukr БД в Delphi 23 07.12.2007 22:13
Работа с текстовым файлом! Edimus Общие вопросы C/C++ 10 19.11.2007 10:31