Timonkaipumpa Δημοσ. 16 Σεπτεμβρίου 2011 Δημοσ. 16 Σεπτεμβρίου 2011 Τυπικά το "συμβολοσειρά" (string) παραπέμπει σε πίνακα χαρακτήρων ή έστω έτσι πιστεύω Το πώς "αναπαρίσταται" στην μνήμη έχει σχέση με το πώς κάνεις το acquisition; Συν ότι δεν ελέγχω για μη ψηφία στο string, συν ότι δεν τυπώνω συχνότητες ψηφίων που δεν υπάρχουν στο string Από την στιγμή που λέει πόσες φορές εμφανίζεται κάθε χαρακτήρας και, επιπλέον, από την στιγμή που ξέρεις ότι είναι μόνο αριθμοί τότε το '0' σημαίνει ότι αυτός ο χαρακτήρας δεν εμφανίστηκε. Άρα, εάν τυπώνεις το '0', τυπώνεις το πόσες φορές εμφανίστηκε ο συγκεκριμένος χαρακτήρας
παπι Δημοσ. 17 Σεπτεμβρίου 2011 Δημοσ. 17 Σεπτεμβρίου 2011 Πω πω..ξε-str-αβωθηκα και μια λυση με ενα τιμιο map δεν ειδα.......
migf1 Δημοσ. 17 Σεπτεμβρίου 2011 Δημοσ. 17 Σεπτεμβρίου 2011 Τι εστί τίμιο map (και τι άτιμο; ) Για δώσε μια λύση με... τίμιο map.
Directx Δημοσ. 17 Σεπτεμβρίου 2011 Δημοσ. 17 Σεπτεμβρίου 2011 Πω πω..ξε-str-αβωθηκα και μια λυση με ενα τιμιο map δεν ειδα....... Μικρή μεν σε C++, τίμια δε; > #include <iostream> #include <string> #include <ctype> #include <map> using namespace std; int main(void) { string strIn = "123456789a7"; map<char, int> mapChr; for(string::iterator itChr = strIn.begin(); itChr != strIn.end(); itChr++) if(isdigit(*itChr)) mapChr[*itChr]++; for(int Chr = '0'; Chr <= '9'; Chr++) cout <<(char)Chr<<" = "<<mapChr[Chr]<<endl; return 0; } ΕΞΟΔΟΣ: >0 = 0 1 = 1 2 = 1 3 = 1 4 = 1 5 = 1 6 = 1 7 = 2 8 = 1 9 = 1 Υ.Γ. Έχει δοκιμασθεί σε C++ Builder.
migf1 Δημοσ. 17 Σεπτεμβρίου 2011 Δημοσ. 17 Σεπτεμβρίου 2011 Εγώ ακόμα δεν έχω καταλάβει τι θα πει τίμιο map (και τι άτιμο)... 1η φορά την ακούω αυτή την έκφραση!
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.