Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Perfaratar
2 / 2 / 0
Регистрация: 07.12.2010
Сообщений: 43
#1

Обработка текстовой информации С++ - C++

07.12.2010, 18:53. Просмотров 768. Ответов 9
Метки нет (Все метки)

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

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;
 
const int n=100;
 
int _tmain(int argc, _TCHAR* argv[])
{
   int i, c=0, v=0;
   char str[n];
   setlocale(LC_ALL,"rus");
   cout<<"Введите строку:";
   for(i=0;i<n;i++)
   {
      if(c==0)
      if(str[i]==',')
      {
         cout<<"Первая запятая в строке находится под номером"<<i+1<<"."<<endl;
         c++;
      }
      if(str[i]==',')
      if(v<i) v=i;
   }
   if(v==0)
   {
      cout<<"В строке, которую вы ввели запятых нет!"<<endl<<endl;
   }
   else
   {
      cout<<"Последняя запятая в строке находится под номером "<<v+1<<"."<<endl<<endl;
   }
   system("pause");
   getch();
   return 0;
}
Внимание вопрос! Нужно эту прогу переделать с библиотекой <string.h> и максимум её использовать. Читал справку, английский не знаю, ничего не нашел. Помогите плиз.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2010, 18:53     Обработка текстовой информации С++
Посмотрите здесь:

С++ Обработка текстовой информации - C++
Здравствуйте, форумчане. Злой препод дал прогу, не могу написать голову ломаю...:) Задание звучит так: Пользователь вводит слово, потом...

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

Из Паскаля в Си++. Шифрование текстовой информации - C++
Шифрование текстовой информации случайной заменой символов. Нужно из Паскаля перевести в С++. program Cipher1; const txt1='Kurs...

Задания на тему: Кодирование текстовой информации - C++
1.Десятичный код (номер) буквы &quot;е&quot; в таблице кодировки символов ASCll равен 101. Какая последовательность десятичных кодов будет...

Обработка текстовой строки - C++
Собственно задание определить, имеются ли в строке изображения двоичных чисел. написал данную прогу. #include &quot;stdafx.h&quot; #include...

обработка символьной информации - C++
Составить программу, которая преобразует произвольный текст путем переворачивания (записи букв в обратном порядке) слов, имеющих четное...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
07.12.2010, 19:05     Обработка текстовой информации С++ #2
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <string>
 
int main()
{
    std::string str("ololo,ahah,wtf,proc,kaka");
    std::cout << "Pervaya <,> pod indexom: " << str.find_first_of(',', 0) << std::endl
              << "Vtoraya <,> pod indexom: " << str.find_last_of(',') << std::endl;
    return 0;
}
Perfaratar
2 / 2 / 0
Регистрация: 07.12.2010
Сообщений: 43
07.12.2010, 19:23  [ТС]     Обработка текстовой информации С++ #3
Спасибо, но мне нужно вводить строку с клавиатуры...
Как можно к этой проге прилепить ввод, если там строка в самой проге задана, так не пойдёт...
Kastaneda
Форумчанин
Эксперт С++
4514 / 2856 / 228
Регистрация: 12.12.2009
Сообщений: 7,250
Записей в блоге: 1
Завершенные тесты: 1
07.12.2010, 19:28     Обработка текстовой информации С++ #4
asics, вы не то сделали. Для данной задачи нужно использовать strchr() и strrchr() из хедера string.h
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
07.12.2010, 19:31     Обработка текстовой информации С++ #5
Perfaratar, Ну елементарно жэ
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <string>
 
int main()
{
    std::string str;
    std::cout << "Enter str: ";
    std::getline(std::cin, str);
    std::cout << "Pervaya <,> pod indexom: " << str.find_first_of(',', 0) << std::endl
              << "Vtoraya <,> pod indexom: " << str.find_last_of(',') << std::endl;
    return 0;
}
Добавлено через 1 минуту
Kastaneda, Согласен.Значит показал еще одни способ решение этой задачи .
Kastaneda
Форумчанин
Эксперт С++
4514 / 2856 / 228
Регистрация: 12.12.2009
Сообщений: 7,250
Записей в блоге: 1
Завершенные тесты: 1
07.12.2010, 19:42     Обработка текстовой информации С++ #6
Вот:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<iostream>
#include <string.h>
using namespace std;
const int N=81;
int main(){
    char string[N];
    cout<<"Enter string : ";
    cin.getline(string,N-1);
    int a=(int)(strchr(string,',')-string+1);
    int b=(int)(strrchr(string,',')-string+1);
    cout<<"First comma in "<<a<<" position, latest comma in "<<b<<" position"<<endl;
    return 0;
}
опытным путем выяснил, что <string> и <string.h> не одно и то же. странно...
Perfaratar
2 / 2 / 0
Регистрация: 07.12.2010
Сообщений: 43
07.12.2010, 19:47  [ТС]     Обработка текстовой информации С++ #7
Спасибо всем огромное можно закрывать тему!!!
Kastaneda
07.12.2010, 20:01
  #8

Не по теме:

Цитата Сообщение от Kastaneda Посмотреть сообщение
<string> и <string.h> не одно и то же.
Что-то я гоню под вечер...

Perfaratar
2 / 2 / 0
Регистрация: 07.12.2010
Сообщений: 43
07.12.2010, 20:32  [ТС]     Обработка текстовой информации С++ #9
Я это уже понял когда ваши проги компилировал
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2010, 21:15     Обработка текстовой информации С++
Еще ссылки по теме:

Обработка символьной информации - C++
Добрый день. Форумчани, очень нужна помощь, вот задание:Распечатать в порядке, обатном алфавитному, все буквы, которые входят в текст не...

Обработка файловой информации - C++
Будте добры, помогите разобраться с задачей: дан текстовый файл, фразы в котором отделены друг от друга точками, а слова – пробелами и...

Обработка символьной информации - C++
Помогите с заданием, кто сможет. Задание: В заданном тексте указать слово, в котором доля гласных максимальна.

Обработка массивов информации - C++
линейный массив содержит значения некоторой функции у(х)на интервале от 0 до 2 с. шагом 0,0001. Определить, является ли функция непрерывно...


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

Или воспользуйтесь поиском по форуму:
Kastaneda
07.12.2010, 21:15     Обработка текстовой информации С++
  #10

Не по теме:

Цитата Сообщение от Perfaratar Посмотреть сообщение
Я это уже понял
Да не, на самом деле это действительно не одно и то же, просто в C++'ном исходнике пишется <cstring> вместо <string.h>. У меня это из головы вылетело, и я что-то задумался, как так нужно подключать <string.h>, странно )))

Yandex
Объявления
07.12.2010, 21:15     Обработка текстовой информации С++
Ответ Создать тему
Опции темы

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