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

Сформировать файл h, заменив каждое вхождение слова «это» на слово «то» - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Для заданного натурального n вычислить http://www.cyberforum.ru/cpp-beginners/thread1062423.html
Для заданого натурального n обчислити S = 1 + 1*2 + 1*2*3 + … + 1*2* …*n . нужно написать программу в С++
C++ Таблица расхода материалов за сутки #include <iostream> #include <conio.h> #include <string> using namespace std; int main(){ string s; struct table{ int nomer; string surname; string name; http://www.cyberforum.ru/cpp-beginners/thread1062407.html
Изменить матрицу так, чтобы в строках остались элементы, которые встречаются более одного раза, а другие заменить нулями C++
Условие: Даны натуральные числа m, n (m, n <= 10) и целочисленную матрицу размера m x n. Изменить матрицу так, чтобы в строках остались элементы, которые встречаются более одного раза, а другие заменить нулями. Решение: Задача работает некорректно, не могу понять алгоритм работы:wall:, и как нужно её сделать. Помогите новичку пожалуйста.:help: #include <iostream> #include <math.h> using...
C++ Профессионалы программирования дайте совет
Хочу стать отличным программистом. Если честно в школе до 9-го класса учился плохо в 10-11 поднажал чтобы поступить в институт,как бы знаний хватило чтобы поступить а за время учебы в школе много чего упустил. Сейчас учусь на первом курсе на программиста, много чего не понимаю, думаю это все недостатки знаний. Дайте совет направьте на путь не легкий и тяжелый. Скажите как вы начинали и какие...
C++ что это? http://www.cyberforum.ru/cpp-beginners/thread1062397.html
illegal else without matching if что это?
C++ Поиски путей в двумерном платформере Мне нужна ваша помощь. Проблема заключается в следующем: У меня есть карта, состоящая из квадратиков (кароч, типа марио). У меня есть игрок и два врага, которые начинают видеть меня, если я попадаю под их range. Но, после того, как я уйду из поля их видимости, они не перестают передвигаться, а должны начать следовать за мной, как бы предполагая, куда я должен пойти. У меня есть следующая идея:... подробнее

Показать сообщение отдельно
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.01.2014, 12:49     Сформировать файл h, заменив каждое вхождение слова «это» на слово «то»
Цитата Сообщение от katsidelin Посмотреть сообщение
Вы не учли, что используя подобный метод можно получить такие результаты: "это.", "это!", "это?" и т.д..
Знаки пунктуации и разный регистр символов...
Я просто внимательно читаю задание. Если написано, что:
Цитата Сообщение от KyKi Посмотреть сообщение
Слова – группы символов, разделенные про-белом или признаком конца строки.
, то это знчит, что между словами только один пробел, после пследнего слова - EOF (о знаках пунктуации ничего не сказано). Если написано:
Цитата Сообщение от KyKi Посмотреть сообщение
заменив каждое вхождение слова «это» на слово «то»
, то это значит, что заменить нужно именно "это" на именно "то" (о регистре ничего не сказано). А выдумывать то, чего нет в задании, можно до бесконечности.
Цитата Сообщение от katsidelin Посмотреть сообщение
"это.", "это!", "это?" и т.д..
Знаки пунктуации и разный регистр символов...
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
#include <iostream>
#include <fstream>
#include <cctype>
using namespace std;
 
int main()
{
    setlocale(0, "");
 
    ifstream fin("f.txt");
    if (!fin) cout << "Error fin!" << endl;
    else
    {
        ofstream fout("h.txt");
        char word[50];
        
        while (fin >> word)
        {
            int n = strlen(word);
            if (n > 4 || n < 3 || (n == 4 && !ispunct((unsigned char)word[n - 1])))
            {
                fout << word;
                if (fin.peek() != EOF)
                    fout << ' ';
                continue;
            }
            
            if (strncmp(word, "это", 3) && strncmp(word, "ЭТО", 3))
            {
                fout << word;
                if (fin.peek() != EOF)
                    fout << ' ';
            }
            else 
            {
                fout << "то";
                if (n == 4) fout << word[n - 1];
                if (fin.peek() != EOF)
                    fout << ' ';
            }
        }
        fin.close();
        fout.close();
    }
    
    cin.get();
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru