Từ 1 tới 2 trên tổng số 2 kết quả

Đề tài: Lập trình C++ | Tạo file văn bản và coppy dữ liệu trên c++

  1. #1
    Ngày gia nhập
    05 2009
    Bài viết
    1

    Mặc định Lập trình C++ | Tạo file văn bản và coppy dữ liệu trên c++

    có ai không,giúp mình giải bài tập C++ nay với!!!!!!!!!!!!!!!


    có 2 file văn bản có tên là SOURCE.txt vàCONFIG13.txt
    nội dung của file config như sau
    <uncoppy>
    a
    an
    the
    <|uncoppy>
    <replace>
    a=AA
    an = ANAN
    the = TheThe
    <|replace>

    viết chương trình thực hiện:
    a/ coppy nội dung file SOURCE13.txt sang file có tên là new131.txt trong đó loại bỏ tất cả các từ ở giữa từ khóa <uncoppy><|uncoppy> có tròn file config.txt
    b/ thống kê tần xuất xuất giện của các tù đã không được coppy
    coppy nội dung file source13.txt sàngile có tên là nem132.txt trong đó thay thế tất cả các từ ở giữa từ khóa <replace><|replace> có trong file config13.txt
    (nhớ là giải với ngôn ngữ lập trình C++ nha!)
    *đây là đề thi của mình, nếu có thể , bạn làm ơn giúp mình với!

  2. #2
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Đây bạn, mình làm hơi vội, sai thì bạn cho mình biết :
    C++ Code:
    1. #include <iostream>
    2. #include <string>
    3. #include <map>
    4. #include <vector>
    5. #include <fstream>
    6. #include <algorithm>
    7.  
    8. using namespace std;
    9.  
    10. const string U_copy = "<uncopy>";
    11. const string L_copy = "<|uncopy>";
    12.  
    13. const string U_replace = "<replace>";
    14. const string L_replace = "<|replace>";
    15.  
    16. struct Words
    17. {
    18.     vector< string > copied_words;
    19.     vector< string > uncopied_words;
    20. };
    21.  
    22. void show_stats_of_words( const vector< string >& input, const string& word_property )
    23. {
    24.     cout << "\n\n- " << word_property << endl;
    25.        
    26.     map< string, int > count;
    27.     for( vector< string >::const_iterator it = input.begin(), end = input.end(); it != end; ++it )
    28.         ++count[ *it ];
    29.    
    30.     for( map< string ,int >::const_iterator it = count.begin(), end = count.end(); it != end; ++it )
    31.     {
    32.         cout << it->first << " occurs  " << it->second << " time(s)."; 
    33.         cout << endl;  
    34.     }
    35.  
    36.     cout << endl << endl;
    37. }
    38.  
    39. void show_words( const vector< string >& input )
    40. {
    41.     for( vector< string >::const_iterator it = input.begin(), end = input.end(); it != end; ++it )
    42.         cout << *it << ", ";
    43. }
    44.    
    45. Words read_file( const string& file_name )
    46. {
    47.     fstream inf( file_name.c_str() );
    48.    
    49.     Words words_container; 
    50.     string line;
    51.     bool uncopy = false;   
    52.    
    53.     while( getline( inf, line ) )
    54.     {
    55.         if( line == U_copy )
    56.         {  
    57.             uncopy = true;
    58.         }
    59.        
    60.         if( line == L_copy )
    61.         {
    62.             uncopy = false;
    63.         }
    64.  
    65.         if( uncopy == false && line != L_copy && line != L_replace && line != U_replace )
    66.         {
    67.             words_container.copied_words.push_back( line );
    68.         }
    69.    
    70.         if( uncopy == true && line != L_copy && line != U_copy )
    71.         {
    72.             words_container.uncopied_words.push_back( line );
    73.         }
    74.     }
    75.  
    76.     return words_container;
    77. }
    78.  
    79. string new_string_from_assignment( const string& s )
    80. {
    81.     string::size_type i = s.find_first_of( "=" );
    82.     return s.substr( i + 1, string::npos );
    83. }
    84.  
    85. void replace_words_from( vector< string >& copied_words )
    86. {
    87.     for( vector< string >::iterator it = copied_words.begin(), end = copied_words.end(); it != end; ++it )
    88.     {
    89.         string tmp_str = new_string_from_assignment( *it );
    90.         tmp_str.erase( remove( tmp_str.begin(), tmp_str.end(), ' ' ), tmp_str.end() ); 
    91.         *it = tmp_str;
    92.     }
    93. }  
    94.  
    95. int main()
    96. {
    97.     Words w_c = read_file( "t.txt" );
    98.  
    99.     show_words( w_c.uncopied_words );
    100.     show_stats_of_words( w_c.uncopied_words, "UNCOPIED WORDS" );
    101.    
    102.     replace_words_from( w_c.copied_words );
    103.  
    104.     show_words( w_c.copied_words );    
    105.     show_stats_of_words( w_c.copied_words, "COPIED WORDS & REPLACED" );    
    106.  
    107.  
    108.     return 0;
    109. }

Các đề tài tương tự

  1. Kỹ thuật C++ coppy file sang o dia khac
    Gửi bởi minhhoangtoday trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 1
    Bài viết cuối: 24-02-2013, 08:29 PM
  2. ExtremeCopy 2.1.0 2012 Pro Full Hỗ trợ coppy file cực nhanh
    Gửi bởi FrankanDK trong diễn đàn Software (Phần mềm) | Ebooks
    Trả lời: 0
    Bài viết cuối: 13-04-2012, 10:32 AM
  3. không Coppy file vào ổ C đc?
    Gửi bởi mysad trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 7
    Bài viết cuối: 03-12-2010, 11:07 AM
  4. Lập trình C++ | Coppy ảnh vào một biến con trỏ trên C++ như thê snaof?
    Gửi bởi C_moi_hoc trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 6
    Bài viết cuối: 02-06-2009, 09:24 PM
  5. Dùng con trỏ để coppy một mảng
    Gửi bởi lethanh trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 5
    Bài viết cuối: 04-10-2008, 03:29 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn