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

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

Войти
Регистрация
Восстановить пароль
 
sniperni
1 / 1 / 1
Регистрация: 28.11.2011
Сообщений: 49
#1

Не могу написать программу по задаче по строкам!! - C++

09.12.2011, 22:59. Просмотров 405. Ответов 1
Метки нет (Все метки)

1. Написать программу, которая считывает текст и выводит на экран только предложения, содержащие введенное с клавиатуры слово.
Предложения завершаются только точками.
Есть вот такие наброски, но программа делает не совсем то:
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
#include <iostream>
#include <conio.h>
#include <string.h>
#include <stdio.h>
using namespace std;
int main()
{
    char *ptc;
    int i;
    char str1[55] = "Privet moya dorogaya. U menya vse horoscho. Kak ti.", str2[10],temp[55];
        puts(str1);
        cout<<"Vvedite iskomoe slovo:";
        gets(str2);
        int nBeg=0;
        for(i=0; i<strlen(str1);i++)
        {
        for(;str1[i]!='.';i++);
        strcpy(temp, str1+nBeg); //i-nBeg
        ptc=strstr(temp,str2); //поиск слова    
        nBeg=i+2;i+=2;
        puts(temp);
        }
        getch();
}
 Комментарий модератора 
Используйте теги форматирования кода!


Помогите, пожалуйста, правильно написать программу по этой задаче! Заранее ОГРОМНОЕ СПАСИБО!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2011, 22:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не могу написать программу по задаче по строкам!! (C++):

Не могу написать код к задаче. Линейные односвязные списки - C++
добавлением нового элемента в начало списка нужно удвоить в списке каждое вхождение нулевого элемента.

Тема: Циклы, функции. Написать программу по данной задаче - C++
:help: Задача решается без использования массивов и строк. Последовательно вводится некоторое количество целых чисел. Определить...

Тема: Циклы, строковый тип. Написать программу по данной задаче - C++
:help: В строке записан текст, в котором слова разделены знаками препинания (пробел : , - ; ), в конце предложения стоит точка, ? или...

Написать программу, которая вводит по строкам с клавиатуры двумерный масив и проводит вычисления - C++
Написать программу, которая вводит по строкам с клавиатуры двумерный масив и вычисляет его элементов по столбцам

Написать программу, которая вводит по строкам с клавиатуры двумерный массив и вычисляет сумму его элементов по столбцам - C++
И еще вот эти две пожалуйста... 1. Написать программу, которая вводит по строкам с клавиатуры двумерный массив и вычисляет сумму его...

Написать программу,которая вводит по строкам с клавиатуры двумерный массив и вычисляет сумму его элементов по столбцам - C++
Помогите пожалуйста Написать программу,которая вводит по строкам с клавиатуры двумерный массив и вычисляет сумму его элементов по столбцам|...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
xAtom
915 / 740 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
10.12.2011, 08:28 #2
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
#include <iostream>
#include <algorithm>
#include <cctype>
using namespace std;
 
int main(void) {
  char str[128] = "Privet moya dorogaya. U menya vse horoscho. Kak moya ti.";
  char sub[32]  = "moya";
 
// cout << "Enter word: ";
// cin.getline(sub, sizeof(sub), '\n');
  
  int id;
  size_t len = strlen(sub);
  char* a, *b, *end  = str + strlen(str);
  const char* pre = ".";
  for(char* it = str; (it = search(it, end, sub, sub + len)) != end;) {
      id = (str == it) ? 1 : isspace(*(it-1));
      if(id && isspace(*(it+len))) {
           if((a = find_end(str, it, pre, pre + 1)) == it)
                  a = str;
           else 
                  for(++a; isspace(*a) && *a; *a++);
           b = find(it, end, '.');
           copy(a, b, ostream_iterator<char>(cout, ""));
           cout << endl;
           it = b;
       } else
           it += len;
  }
  return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2011, 08:28
Привет! Вот еще темы с ответами:

Написать программу,которая вводит по строкам с клавиатуры двумерный массив и вычисляет сумму его элементов по столбцам - C++
Помогите пожалуйста написать программу,которая вводит по строкам с клавиатуры двумерный массив и вычисляет сумму его элементов по столбцам/...

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

Написать программу, в которой создается двухмерный массив, значения вводятся с клавиатуры,потом значения умножаются по строкам - access violation - C++
Здравствуйте. Задание написать программу в которой создается 2-х мерный массив (размер вводится с клавиатуры),значения так же вводяться с...

Не могу написать программу - C++
Требуется написать программы. Задания звучат так: Составить программу для решения задачи, в соответствии с вариантом. Программа должна...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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