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

Переделать программу, что бы она заменяла английскую а на английскую b - C++

Восстановить пароль Регистрация
 
vitaliypro
1 / 1 / 0
Регистрация: 09.09.2013
Сообщений: 125
17.09.2013, 14:53     Переделать программу, что бы она заменяла английскую а на английскую b #1
вот есть текст программы который меняет местами предложения.
нужно переделать ее так, что бы она заменяла английскую а на английскую b.
(файлы 1.txt 2.txt создать вручную)


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
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main ()
{
    ifstream fin("input.txt", std::ios::in);    //открытие файла
    if (!fin) { cout<<"There is no file. Error!"<<endl; return 1;}
    string sent [10000];    // массив из предложений
    int j=0;//счетчик для массива
    do
    {
        if (fin.eof()) {sent[j]+='\0'; break;}  // если конец файла, то выход из цикла
        char q=fin.get();   // считываем один символ
        sent[j]+=q; // запоминание символа
        if (q == '.' || q == '!' || q == '?')   // если знак препинания
        {
            sent[j]+='\0';  // закончить строку
            j++; // начать запись в следующую строку
            char q=fin.get();
            if (q!=' ') sent[j]+=q;
        }
    }
    while (1);
    fin.close();
    ofstream fout("output.txt", ios::out);  // создание файла для записи
    for (int i=j-1; i>=0;i--) fout<<sent[i];    // запись предложений в обратном порядке
    fout.close();
    return 0; 
}



HELP ME PLEASE!!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2013, 14:53     Переделать программу, что бы она заменяла английскую а на английскую b
Посмотрите здесь:

Вот програмка, надо переделать штоби она мИстыла C++
Что нужно дописать в программу чтобы она оставалась на экране 10 секунд C++
C++ Переделать программу под класс. Т.е. чтобы она работала так же, но с классом
C++ Как подправить программу, что бы она проверяла является ли строчка полиндромом без пробелов
C++ требуетсяя изменить программу так что бы она считывала значения int а не double
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Пёс
 Аватар для Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
17.09.2013, 15:36     Переделать программу, что бы она заменяла английскую а на английскую b #2
Цитата Сообщение от vitaliypro Посмотреть сообщение
C++
1
while (1);
Лол что?
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 15:42     Переделать программу, что бы она заменяла английскую а на английскую b #3
Цитата Сообщение от Пёс Посмотреть сообщение
Лол что?
Что не так?
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5437 / 2561 / 233
Регистрация: 01.11.2011
Сообщений: 6,330
Завершенные тесты: 1
17.09.2013, 15:43     Переделать программу, что бы она заменяла английскую а на английскую b #4
Цитата Сообщение от Пёс Посмотреть сообщение
Лол что?
Если б я придумывал терминологию, то назвал бы это 'бесконечный цикл'. Звучит? )
vitaliypro
1 / 1 / 0
Регистрация: 09.09.2013
Сообщений: 125
17.09.2013, 15:44  [ТС]     Переделать программу, что бы она заменяла английскую а на английскую b #5
бесконечный цикл)))) Вы правы)
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 15:46     Переделать программу, что бы она заменяла английскую а на английскую b #6
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Если б я придумывал терминологию, то назвал бы это 'бесконечный цикл'. Звучит? )
А это что?
Цитата Сообщение от vitaliypro Посмотреть сообщение
if (fin.eof()) {sent[j]+='\0'; break;} // если конец файла, то выход из цикла
Или вы о чём?
vitaliypro
1 / 1 / 0
Регистрация: 09.09.2013
Сообщений: 125
17.09.2013, 15:50  [ТС]     Переделать программу, что бы она заменяла английскую а на английскую b #7
это мелочи все.
а по существу, как поменять символы???

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
#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>
#include <string.h>
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    int size, result;
 
    FILE *out = fopen("2.txt","wb");
    FILE *in = fopen("1.txt","rb");
 
    if(in==NULL) {printf("Создайте файл in.txt\n"); exit(1);}
    /*Посчитали сколько нужно будет байт*/
    fseek (in, 0, SEEK_END);
    size = ftell(in);
    fseek (in, 0, SEEK_SET);//вернулись в начало
 
    /*Выделили память под заполнение*/
    char *b = (char *)malloc(size);
    if(b==NULL) exit(1);
 
    /*Считали всё из файла*/
    result = fread(b,1,size,in);
    if(result!=size) {printf("Возникла ошибка\n"); exit(1);}
 
    int i;
    for(i=0; i<size-1; i++) {
        printf("%c",  *(b+i));
    }
 
    fwrite(b, 1, size, out);
    free(b);
 
 
    for(i=0; i<size-1; i++)
    {
        if(*(b+i)=='a') {*(b+i)='b'; }
        printf("%c",  *(b+i));
    }
 
 
 
    printf("\n");
    system ("pause");
    return 1;
}




вот нашел еще одны, похожую, но она совсем криво работает(((
alsav22
17.09.2013, 15:54
  #8

Не по теме:

Цитата Сообщение от vitaliypro Посмотреть сообщение
это мелочи все.
Отнюдь... Кому мелочи, кому нет...

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.09.2013, 18:18     Переделать программу, что бы она заменяла английскую а на английскую b
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
vitaliypro
1 / 1 / 0
Регистрация: 09.09.2013
Сообщений: 125
18.09.2013, 18:18  [ТС]     Переделать программу, что бы она заменяла английскую а на английскую b #9
help please
Yandex
Объявления
18.09.2013, 18:18     Переделать программу, что бы она заменяла английскую а на английскую b
Ответ Создать тему
Опции темы

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