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

В текстовом файле после каждой 2 буквы вставлять буквы из слова - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Run-Time Check Failure #3 - The variable 'i' is being used without being initialized http://www.cyberforum.ru/cpp-beginners/thread514541.html
#include "stdafx.h" #include "cstdlib" #include "cstring" #include "iostream" using namespace std; int _tmain(int argc, _TCHAR* argv) { setlocale(LC_ALL, "Russian"); const int n=20;
C++ Организация клиента сервера передачи данных по Com порту есть 2 ПК соединенных через COM порт. Надо организовать между ними связь. То есть 1 комп -сервер, другой клиент. Меня интересует тут все... 1) как организовать структуру программ. 2) что именно синхронизировать. Ну например поток приема данных зациклить надо, а отправки- нет. Нужно ли блокировать потом приема данных если получаем много пакетов, чтобы их обработать? Потери будут ли? ... http://www.cyberforum.ru/cpp-beginners/thread514537.html
обьясните задание C++
Захватить память для массива из 10 структур Заполните массив данными из файла "2.dat". Вывести информацию о маршрутах, имеющих определенный пункт в качестве начального или конечного. Высчитать для них среднюю длину. Перед завершением программы освободить память структура вот такая
С++. Действие с числом и составляющими его цифрами. C++
Помогите пожалуйста с заданием... ооочень нужно. Задание: Дано трехзначное число. Найти сумму и произведение его цифр. Вывести число, полученное при прочтении исходного числа справа налево. В нем зачеркнули первую слева цифру и приписали ее справа. Вывести полученное число.
C++ непонятная строка !!! http://www.cyberforum.ru/cpp-beginners/thread514512.html
помогите мне .я не понимаю функцию у одной строки .объясните детально если не трудно #include <iostream> using namespace std; /// class Distance { private: int feet; float inches; public:
C++ Динамический массив объектов структуры AEROFLOT Подготовьте массив указателей на AEROFLOT на 50 элементов. Считайте все записи из файла "5.dat" . Для чтения каждой отдельной записи осуществите динамический захват памяти. Соответствующий адрес храните в массиве указателей. Выполните сортировку данных по номеру рейса - причем сортировать потребуется только указатели в массиве. подробнее

Показать сообщение отдельно
MrCold
851 / 749 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
09.03.2012, 16:35     В текстовом файле после каждой 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
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#include <iostream>
#include <string.h>
#define BSIZE 250
 
void insertFun(char*text, int pos, char sym)
 {
    for ( int i = strlen(text); i >= pos; i--)
                 text [i + 1] = text[i];
                          text[pos] = sym;
}
 int main(){
 
     char text[BSIZE] = "Info about live work buildings and lofts";
 
 
    char symbols[100] = "Hellow";
    int numsym = -1;
     long n = 0, i = 0;
    int count = 0;
    long count_insert = 0;
    bool loop = true;
 
 long len = strlen(text);
 
    std::cout << "Word for letter : Hellow\nBase text :\n" << text << std::endl ;
 
 
 ////////////////////////////////////////////////////////////
///   ВСТАВЛЯЕМ В ТЕКСТ БУКВЫ ИЗ СЛОВА (после второй буквы в каждое слово)
 
       i = 0;
 
    while(text[i]){
 
       if(text[i] ==' ') loop = true;
 
         if(isalpha(text[i])&&loop) count++;
 
    if(count > 1)
         {
            count = 0;
            numsym++;
            if(numsym > strlen(symbols) - 2)
 
               numsym = 0;
 
            count_insert ++;
 
       insertFun( text, i + 1, symbols[numsym]);
 
       loop = false;
    }
    i++;}
    //              ВЫВОД НА ЭКРАН 
    std::cout << "\nInsert letters  :" << std::endl;
 
    for(i = 0; i <  len + count_insert   ; i++)
 
    std::cout << text[i];
 
    std::cout << std::endl;
 
       i = 0;
 
    int  j = 0;
     /////////////////////////////////////////////////////////////
     //                    УДАЛЕНИЕ ПРОБЕЛОВ
 
        for(; j <  len + count_insert; ++j )
        {
          if( text[j] != ' ' )
          {
                text[i++] = text[j];
          }
        }
        text[i] = '\0';
 
 
      std::cout << "\nWhithout spaces  :" << std::endl;
 
      //              ВЫВОД НА ЭКРАН 
 
       for(j = 0; j < i ; j++){
 
    std::cout << text[j];
 
 
    }
 std::cout << std::endl;
 
 
system("pause");
 
    return 0;}
Результат

C++
1
2
3
4
5
6
7
8
9
Word for letter : Hellow
Base text :
Info about live work buildings and lofts
 
Insert letters  :
InHfo abeout lilve wolrk buoildings anHd loefts
 
Whithout spaces  :
InHfoabeoutlilvewolrkbuoildingsanHdloefts
Добавлено через 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
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
///////////////////////////////////
//       CODE FOR MSVS 2010
///////////////////////////////////
 
#include <iostream>
#include <fstream>
#define BSIZE 256
 
void insertFun(char*text, int pos, char sym)
 {
    for ( int i = strlen(text); i >= pos; i--)
                 text [i + 1] = text[i];
                          text[pos] = sym;
} 
 int main(){
                          
     char *text = NULL;
        
 
     char symbols[100] = "Hellow";
     int numsym = 0;
 
    // std::cin.getline(text,BUFSIZE);                             
     long n = 0, i = 0;
     int count = 0;
     long count_insert = 0;
     bool loop = true;
 
    
 
     std::cout << "Text from file\n" << std::endl;
 
     std::ifstream infile("file.txt");
     if(!infile) std::cout << "Error opening file -'infile'";
     //////////////////////////////////////////////////////////////////
     // ЗАПИСЬ СОДЕРЖИМОГО ФАЙЛА В МАССИВ 
     //              ВЫВОД НА ЭКРАН 
 
     else
     { 
     text = new char[BSIZE];
         infile.getline(text,BSIZE);
         long len = strlen(text);
         std::cout << text;
     /////////////////////////////////////////////////////////////
     //   ВСТАВЛЯЕМ В ТЕКСТ БУКВЫ ИЗ СЛОВА (после второй буквы в каждое слово)
       
         i = 0;
 
     while(text[i]){
 
         if(text[i] ==' ') loop = true;
 
            if(isalpha(text[i])&&loop) count++;
 
     if(count > 1) 
            {   
                count = 0;  
 
                if(numsym > strlen(symbols) - 2)
 
                    numsym = 0;
 
                count_insert ++;
 
         insertFun( text, i + 1, symbols[numsym]);
         numsym++; 
         loop = false;
     }
     i++;}
     std::cout << "\n\nInsert letters from word\n" << std::endl;
 
     for(i = 0; i <  len + count_insert - 2 ; i++)
 
     std::cout << text[i];
 
     std::cout << std::endl;
 
       i = 0;
 
     int  j = 0;
     /////////////////////////////////////////////////////////////
     //                    УДАЛЕНИЕ ПРОБЕЛОВ
 
        for(; j <  len + count_insert - 2 ; ++j )
        {
          if( text[j] != ' ' )
          {
                text[i++] = text[j];
          }
        }
        text[i] = '\0';
 
 
        std::cout << "\nDelete spaces and rewrite file\n" << std::endl;
 
         /////////////////////////////////////////////////////////////
     //              ВЫВОД НА ЭКРАН ТО ЧТО ЗАПИШЕТСЯ
 
         for(j = 0; j < i ; j++)
 
     std::cout << text[j];
 
         std::cout << std::endl;
 
     
     }
     infile.close();
 
      std::ofstream outfile("file.txt");
 
     if(!outfile) std::cout << "Error opening file 'outfile' ";
 
     else{
 
         outfile << text;
    
         ;}
     outfile.close();
 
     delete[]text;
 
system("pause");
 
    return 0;
 }
 //
Добавлено через 17 минут
Cтрока 74 и 86 заменить на эту
C++
1
for(; j <  len + count_insert ; ++j )
 
Текущее время: 03:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru