Results 1 to 6 of 6

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Registered User ABDON's Avatar
    Join Date: Apr:2004
    Location: Âàðíà
    Posts: 1,849

    Arrow C++ Êàê äà ïðåáðîÿ áóêâèòå â òåêñò íà êèðèëèöà?

    Çäðàâåéòå
    Èìàì ïðîáëåìè ñ áðîåíåòî íà áóêâèòå â òåêñò íà êèðèëèöà Ëàòèíñêèòå áóêâè ãè áðîè íîðìàëíî, íî òåçè íà êèðèëèöà ãè ïðîïóñêà. ßâíî áúðêàì íÿêúäå.
    Òîâà å ïðîãðàìêàòà:

    Code:
    #include <iostream>
    #include <string>
    #include <cctype>
    
    using namespace std;
    
    void showValues(string, int);
    
    long int main()
    {
        string sentence;
        cout << "Enter text: ";
        getline(cin, sentence);
        showValues(sentence, sentence.length());
        system("pause");
        return 0;
    }
    
    void showValues (string chars, int size)
    {
    
        
           int y=0;
          for (int i=0;i<size;i++)
          {
           int temp=(int)chars[i];
          if ((temp>64 && temp<91) || (temp>96 && temp<123) || (temp>1040 && temp<1103)) y++;
          }
          cout << y << " Letters" <<  endl;
          cout << endl;
    }
    Ùå ñúì áëàãîäàðåí íà âñÿêàêâè ñúâåòè

    ÏÏ. Ïîñëåäíèòå 3-4 ãîäèíè íå ñúì ïèñàë íèùî, òàêà ÷å å âúçìîæíî äà èìà èäèîòñêè ãðåøêè. Íåùàòà ñå çàáðàâÿò.
    ÏÏ2. Ìàé ñå îïèòâàì äà íàïðàâÿ íåùî íåâúçìîæíî
    Last edited by ABDON; 14th January 2010 at 23:48.
    Toys: ThinkPad T510 | iPhone 4 | Ultimate Ears Super.fi 4vi | X-mini II
    www.ivanzhelev.com

  2. #2
    Áåëûé è ïóøèñòûé Bombera's Avatar
    Join Date: Jul:2001
    Location: Êàçàíëúê 4EVA
    Posts: 13,833
    Win32 ôóíêöèÿòà çà öåëòà:
    IsCharAlpha
    Ïðåäïîëàãàì, ÷å ïî ïîäðàçáèðàíå ñà òè Óíèêîäà ñòðèíãîâåòå. Ñëåäîâàòåëíî, àêî ÿ ïîëçâàø, èìïîðòèðàø IsCharAlphaW.
    EVGA X299 FTW K|i9-7960X@4.7|4x8 Patriot Viper Steel 4000|GTX 1660 Ti|970 EVO 1 TB|Seasonic Focus GX-1000|Xigmatek Elysium|Êèëî è ïîëîâèíà âîäà
    Rampage IV Extreme BE|E5-1680v2@4.7|4x4 HyperX 1866|Cougar Aqua 240|GTX 1050 Ti|970 EVO 1/4 TB|CM 850 SilentPro|HAF-X|Áåç èñòèíñêî âîäíî

  3. #3
    Registered User
    Join Date: Oct:2003
    Location: Ñîôèÿ
    Posts: 4,317
    Âñúùíîñò êàêâî èçîáùî ñå ïèøå â òîçè ñòðèíã? Íå áèõ ñå ó÷óäèë, àêî ïîêðàé ðàçíèòå êîäîâè òàáëèöè âúòðå âëèçà íåùî ïî òàáëèöà 866.
    Ñúùî òàêà òðÿáâà ëè èçðè÷íî äà ñå óêàæå ïðèëîæåíèåòî äà ñå êîìïèëèðà êàòî Unicode, èëè òîâà êîìïèëàòîðúò ãî ïðàâè ïî ïîäðàçáèðàíå?

  4. #4
    Áåëûé è ïóøèñòûé Bombera's Avatar
    Join Date: Jul:2001
    Location: Êàçàíëúê 4EVA
    Posts: 13,833
    Code:
    #include <iostream>
    #include <string>
    #include <cctype>
    #include <windows.h>
    
    using namespace std;
    
    void showValues(string, int);
    
    long int main()
    {
        string sentence;
    
        cout << "Current code page:" << GetConsoleCP()<<endl;
        cout << "Enter text: ";
        getline(cin, sentence);
        showValues(sentence, sentence.length());
        system("pause");
        return 0;
    }
    
    void showValues (string chars, int size){
    	int y=0;
    
        for (int i=0;i<size;i++){
           if (IsCharAlpha(chars[i])) 
    		   y++;
        }
        cout << y << " Letters" <<  endl;
        cout << endl;
    }
    Òîâà ïðè ìåí ðàáîòè, íî èçðè÷íî òðÿáâà äà ñå êîìïèëèðà êàòî ÍÅ-Óíèêîä. string íå åáàâà Óíèêîä, ïîíå íà ïðúâ ïîãëåä. sizeof(chars[i]) e ñàìî åäèí áàéò. Íå çíàì äàëè å îò íàñòðîéêèòå íà êîíçîëàòà èëè ñàìèÿ êëàñ.
    EVGA X299 FTW K|i9-7960X@4.7|4x8 Patriot Viper Steel 4000|GTX 1660 Ti|970 EVO 1 TB|Seasonic Focus GX-1000|Xigmatek Elysium|Êèëî è ïîëîâèíà âîäà
    Rampage IV Extreme BE|E5-1680v2@4.7|4x4 HyperX 1866|Cougar Aqua 240|GTX 1050 Ti|970 EVO 1/4 TB|CM 850 SilentPro|HAF-X|Áåç èñòèíñêî âîäíî

  5. #5
    Ïðèìèòèâ Pesho®'s Avatar
    Join Date: Nov:2001
    Location: Sofia
    Posts: 5,169
    Quote Originally Posted by Bombera View Post
    Òîâà ïðè ìåí ðàáîòè, íî èçðè÷íî òðÿáâà äà ñå êîìïèëèðà êàòî ÍÅ-Óíèêîä. string íå åáàâà Óíèêîä, ïîíå íà ïðúâ ïîãëåä. sizeof(chars[i]) e ñàìî åäèí áàéò. Íå çíàì äàëè å îò íàñòðîéêèòå íà êîíçîëàòà èëè ñàìèÿ êëàñ.

    Ïðè íå-Óíèêîä ïðèëîæåíèÿ áè òðÿáâàëî äà âàæàò íàñòðîéêèòå îò Regional Settings â Êîíòðîë Ïàíåëà - àêî "...for non-unicode programs" å "Bulgaria" áè òðÿáâàëî ïðèëîæåíèåòî äà ãè ïîëó÷àâà êàòî CP1251. Çàòîâà ðàáîòè

    Äðóãèÿò íà÷èí å äà ñå êîìïèëèðà êàòî Unicode ïðèëîæåíèå è äà ñå ÷åòå âúâ std::wstring.
    Êîéòî ìè öúêíå ÷åðâåí ïàëåö, äà ìó îìåêíå ÷óðêàòà!

  6. #6
    Áåëûé è ïóøèñòûé Bombera's Avatar
    Join Date: Jul:2001
    Location: Êàçàíëúê 4EVA
    Posts: 13,833
    Äà, òàêà å, êîäîâàòà ñòðàíèöà ïî ïîäðàçáèðàíå ïðè ìåí å 1251. Òîâà ïîêàçâà è GetConsoleCP. Èñêàõ äà ãî ïîäêàðàì â Óíèêîä, íî íå ïîçíàâàì íèòî êîíçîëíèòå ïîòîöè, íèòî string, íèòî STL(ïðåäïîëàãàì?), íèòî C++ â òîçè ìó àñïåêò íà ïîëçâàíå.
    Áåç òèÿ C++ è èçìèøëüîòèíè ïîíå çà ìåí å ìíîãî ïî-ëåñíî, íî áàçàòà å äðóãà.
    Óêàçâàì èçëèøíî äà íå å Óíèêîä, ïîíåæå íå IsCharAlpha îáúðêâà íåùàòà, à íåùî äðóãî, êîåòî íå ïîçíàâàì, à íåçàïîçíàò ÷îâåê áè îñòàíàë ñ âïå÷àòëåíèåòî, ÷å ôóíêöèÿòà íå ðàáîòè êîðåêòíî.
    Àëòåðíàòèâà íà òàçè ôóíêöèÿ å êîä, êîéòî ïðîâåðÿâà íå äàëè ñèìâîëúò èìà ñòîéíîñò, îòãîâàðÿùà íà ðàçïîëîæåíèåòî íà áóêâè â êîäîâà òàáëèöà, à îáðàòíîòî - äà ïðîâåðÿâà äàëè å íåáóêâà, èìàéêè ïðåäâèä, ÷å íåáóêâåíèòå ñèìâîëè èìàò ôèêñèðàíî ìÿñòî(ïî÷òè). Òîâà å â ñèëà, àêî ñå òúðñè ïî-ëåñíà ANSI ñòðèíã ñúâìåñòèìîñò è êîðåêòíîñò íà ðàáîòà.
    Ïðè Óíèêîä, IsCharAlpha ðàáîòè ÷óäåñíî.
    EVGA X299 FTW K|i9-7960X@4.7|4x8 Patriot Viper Steel 4000|GTX 1660 Ti|970 EVO 1 TB|Seasonic Focus GX-1000|Xigmatek Elysium|Êèëî è ïîëîâèíà âîäà
    Rampage IV Extreme BE|E5-1680v2@4.7|4x4 HyperX 1866|Cougar Aqua 240|GTX 1050 Ti|970 EVO 1/4 TB|CM 850 SilentPro|HAF-X|Áåç èñòèíñêî âîäíî

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Copyright © 1999-2011 Õàðäóåð ÁÃ. Âúçìîæíî å ñúäúðæàíèåòî íà òàçè ñòðàíèöà äà å îáåêò íà àâòîðñêè ïðàâà.
iskamPC.com | mobility.BG | Bloody's Techblog | Êðèïòîâàëóòè è ìàéíèíã | 3D Vision Blog | Ìàãàçèí çà åëåêòðîííè öèãàðè