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

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

Восстановить пароль Регистрация
 
sniperni
0 / 0 / 0
Регистрация: 28.11.2011
Сообщений: 46
09.12.2011, 22:59     Не могу написать программу по задаче по строкам!! #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();
}
 Комментарий модератора 
Используйте теги форматирования кода!


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

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
xAtom
 Аватар для xAtom
910 / 735 / 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;
}
Yandex
Объявления
10.12.2011, 08:28     Не могу написать программу по задаче по строкам!!
Ответ Создать тему
Опции темы

Текущее время: 22:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru