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

Удаление слов, которые начинаются на одну букву - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перевести из Pascal в C++ http://www.cyberforum.ru/cpp-beginners/thread584789.html
Ребят, помогите пожалуйста перевести программы на С++! :( Задача №1 (Схема горнера) program labblablabla; var x,s,k:real; i,n:integer; begin s:=0; Write('Введите x= ');
C++ Undefined symbol немогу запустить программу у меня не получается правильно обявить переменные //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" #include <math.h> #include <conio.h> #include <iostream.h> http://www.cyberforum.ru/cpp-beginners/thread584786.html
C++ Удалить комментарии из файлов С и С++
Создать функцию удаляющую комментарии из файлов С и С++. Функция принимает в качестве параметра имя входного и выходного файлов и удаляет из файла все части строки, следующие за символами «//», и все куски теста заключенные в символы «/*…*/», результат записывается в выходной файл. Функция должна генерировать exception, если файл не существует или если комментарии открываются (есть «/*»), но не...
C++ Интегралы,последовательность
Здравствуйте, помогите пожалуйста написать код, с++ не знаю вообще, необходимо по учебе. Задача 1.Имеется последовательность произвольных целых ненулевых чисел, в интервале от -3200 до + 3200, завершающаяся числом 0. Последовательность может содержать повторяющиеся числа. Максимальное количество элементов в последовательности неизвестно, поэтому последовательность необходимо поместить в...
C++ Функции, сжатие слов http://www.cyberforum.ru/cpp-beginners/thread584770.html
Описать функцию CompressStr(S) строкового типа, выполняющую сжатие строки S по следующему правилу: каждая подстрока строки S, состоящая из более чем четырех одинаковых символов C, заменяется текстом вида «С{K}», где K — количество символов C (предполагается, что строка S не содержит фигурных скобок «{» и «}»). Например, для строки S = «bbbccccce» функция вернет строку «bbbc{5}e». С помощью...
C++ в чем ошибка? #include "stdafx.h" #include <iostream> #include <conio.h> #include <stdlib.h> int main() { int a; int x, y, i, j, c; int b; подробнее

Показать сообщение отдельно
Maestro1994
Сообщений: n/a

Удаление слов, которые начинаются на одну букву - C++

23.05.2012, 22:42. Просмотров 728. Ответов 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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include<fstream>
#include<stdio.h>
#include<conio.h>
#include<iostream>
#include"ConsoleColor.h"
 
using namespace std;
 
int main()
{
    char bukva[1],temp[210],text[211],bezslov[211];
    int n,w,g=0,c=0,j=0,i=0;
    ifstream f;
    f.open("111.txt");
    
    if(!f)
        cout << "The file isn't found";
        
    else
    {
        cout << "TEKST do obrabotki:\n";
        f.getline(temp,210);
        n = strlen(temp);
        cout << temp << endl;
        
        text[i]=32;
        for(i=1,w=0;i<n+1,w<n;i++,w++)
            text[i]=temp[w];
        n+=1;
 
        for(i=0;i<n;i++)
            if(((64<text[i] && text[i]<91) || (96<text[i] && text[i]<123)) && text[i-1]==32)
            {
                bukva[0]=text[i];
                break;
            }
 
        for(i=0;i<n;i++)
        {
            if(text[i]==bukva[0] && text[i-1]==32 && text[i+1])
            {
                c++;
                for(int f=i;f<n;f++)
                {
                    if(text[f]!=32)
                    {
                        i++;
                        g++;
                    }
                    else
                        break;
                }                       
                
            }
            else
            {
                bezslov[j]=text[i];
                j++;
            }
            
        }
        
        
        cout<<endl<<"TEKST posle obrabotki"<<endl;
 
        for(j=1;j<n-g-c;j++)
            cout<<bezslov[j];
        cout<<endl;
        
        
 
    }
        f.close();
        return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 08:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru