IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> поиск слова в тексте,выделение,замена регистра букв в слове, C++
сообщение
Сообщение #1


Бывалый
***

Группа: Пользователи
Сообщений: 233
Пол: Женский
Реальное имя: Dasha

Репутация: -  0  +


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

я воспользовалась поиском и нашла решение задачи на паскале,но всё же работа со строками там сильно отличается от с++.

вот например,можно ли с файла(ну или с экрана) считать тект в массив по словам?как осуществлять поиск конкретного слова,особенно если есть несколько вхождений.

и вот насчет смены букв строчных на пописные...кажется у них код различается на определенную величину...или как их можно заменить?

очень прошу о помощи)


--------------------
irreparabilium felix olivio rerum
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Цитата
но всё равно иначе можно сделать?
Всегда можно сделать иначе, только вот вопрос: если сделать по-другому, тебе сразу все будет понятно? Ты уверена в этом? Посмотрим:
#include <fstream.h>
#include <iostream.h>
#include <conio.h>;
#include <string.h>;

#include <ctype.h>

int main() {

char s[71];

ifstream infile("Text700.txt");
while (!infile.eof()) {
infile.getline(s, 80);
cout << s << endl;
}

cout << "Enter the Word: ";
char word[50];
cin >> word;


infile.seekg(0, ios::beg);
infile.clear();

while(!infile.eof()) {

infile.getline(s, 80);
do {

char *p;
p = strstr(s, word);
if(p) {
for(int i = 0; i < strlen(word); i++) *(p+i) = toupper(*(p+i));
}
else break;

} while(1);
cout << s << endl;
}

cout << "Press any key" << endl;
getche();
return 0;
}



Цитата
как ими пользоваться
Как обычно:
     int length, i;
char *string = "this is a string";

length = strlen(string);
for (i=0; i<length; i++)
{
string[i] = toupper(string[i]);
}
(пример - из справки Turbo C++ 3.0)
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Tribunal   поиск слова в тексте,выделение,замена регистра букв в слове   7.11.2006 20:13
volvo   Ищи внимательнее, я и на С++ эту программу уже дел…   7.11.2006 20:19
Tribunal   Ищи внимательнее, я и на С++ эту программу уже де…   7.11.2006 21:33
volvo   Всегда можно сделать иначе, только вот вопрос: есл…   7.11.2006 21:47
Tribunal   нда... понятно действительно далеко не всё...хотя …   10.11.2006 21:06
volvo   Ну, так оно же выделяется: if(p) { …   10.11.2006 21:32
Tribunal   не) оно должно помимо этого еще и в исходном текст…   10.11.2006 21:39
volvo   Не знаю. Я этого в задании, например, не увидел...…   10.11.2006 21:53
Tribunal   под словом выделить там подразумевается именно цве…   10.11.2006 22:04
Tribunal   вот такой штукой можно весь текст выделить),а как …   10.11.2006 22:30
Алена   Значит, смотри, какая есть идея: работа с консольн…   12.11.2006 23:50
Tribunal   спасибо огромное,только вот я не очень разобралась…   13.11.2006 14:32
Алена   То есть? В каком "исходном"? Что выводит…   13.11.2006 14:47
Tribunal   хочется,чтобы это было читаемо...ну и красиво как-…   13.11.2006 19:21
Tribunal   а что такое p = strstr(pp, word);?   13.11.2006 20:20
Tribunal   ну вроде теперь всё нормально. вот только не могли…   18.11.2006 14:15


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 6.05.2024 0:34
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name