Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.03.2013, 00:28   #1
fratriecz
Пользователь
 
Регистрация: 13.10.2012
Сообщений: 18
По умолчанию прога переводчик на с++

доброго времяни суток,программа ниже делает все действия с переводом только с одним введенным словом,помогите ее модернизировать чтобы она переводила текстами...или хотябы методом считывания и работы до последнего символа в строке


Код:
#include <iostream>
#include <map>
#include <string>
#include <fstream>
#include <locale>
#include <cstdlib>
 #include <sstream>
#include <algorithm>
#include <Windows.h>
#include <fstream>
using namespace std;
 
int main()
{ 
  setlocale(LC_CTYPE, "Russian");


 
    ifstream in("words.txt");
 
    string s1, s2;
    map <string, string> words;
 
    while(in >> s1 >> s2)
    {
        words[s1] = s2;
        words[s2] = s1;
    }
 
   
    
    in.close();
//-------------------------------------------------------------
//-----------------------------------------------------------------
    while(true)
    {   
        cout << "Введите слово на английском или на русском которое хотите перевести, или w чтобы дополнить словарь (для чтения с текстового файла r)(для выхода - q): "<< endl;
    
        cin >> s1;
        
        if(s1 == "q") break;
        if(s1 == "r")
        { string wrd, trn;
            ifstream fin("hello.txt",ios::in );
 
 
         
    	printf("введенное слово : "); 
   
          cout << fin.rdbuf()<< endl;
          
           if(words.find(s2) != words.end());
          
          cout << "Перевод слова: " << s2 << endl;
          
          
           }
        
              
           
        
        
        
        
        
        
        if(s1 == "w") 
        {
              string s1, s2;
             FILE *file;
 
             if ((file = fopen("words.txt","a")) == NULL)
             {
                printf("Файл невозможно открыть\n");
                continue;
             }
             else
             {
                 cout << "Введите слово на английском: ";
                 cin >> s1; 
                 cout << "Введите перевод: ";
                 cin >> s2;
                 
                 fprintf(file, "%s%c%s%c", s1.c_str(), ' ', s2.c_str(), '\n');
 
                 words[s1] = s2;
        words[s2] = s1;
             }
             cout << "Слово и перевод записаны" << endl;
             
             fclose(file);
        }
        else
        {
            if(words.find(s1) != words.end())
                cout << "Перевод слова: " << words[s1] << endl;
            else 
                cout << "В словаре этого слова не найдено" << endl;
        }
    }
 
    system("pause");
    return 0;
}
Вложения
Тип файла: txt words.txt (30 байт, 169 просмотров)
Тип файла: txt hello.txt (5 байт, 181 просмотров)
fratriecz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
прога-переводчик си++ fratriecz Помощь студентам 3 22.02.2013 17:51
Переводчик Bekzat_92 Помощь студентам 2 12.04.2012 21:46
Переводчик stenl1 Софт 5 08.08.2011 00:00
Переводчик Lemo Помощь студентам 2 09.02.2011 21:13
Переводчик Jinno Фриланс 10 05.11.2009 21:45