[TEMA] convertirea primei litere din fiecare cuvant in litera mare
Last Updated: Jun 23 2015 20:53, Started by
stefanutz13
, Jun 02 2015 16:11
·
0
#1
Posted 02 June 2015 - 16:11
Salut.Am urmatorul program:
int main() { cin.get(s,256); char *pch; pch = strtok (s," ,.-"); while (pch != NULL) { cout<<pch<<endl; pch = strtok (NULL, " ,.-"); } return 0; }Dupa split , imi afiseaza ana are meredar eu vreau sa convertesc prima litera a fiecarui cuvat in litera mare.Cum fac asta? De ce functia toupper() , imi cere varaibila int ca si parametru? NU inteleg.O zi faina! |
#2
Posted 02 June 2015 - 20:50
pai si vrei sa-ti afiseze
Ana Are Meresau vrei sa ramana string-ul intreg adica sa-ti afiseze: Ana Are Mere ? |
#3
Posted 02 June 2015 - 21:11
Stringul intreg si sa afiseze Ana Are Mere indiferent de cate spatii am intre cuvinte. Daca reusesti , sa mi si explici cum ai gandit . Ms!
|
#4
Posted 02 June 2015 - 21:36
Eu m-am gandit ca pentru prima litera dupa spatiu sa o fac liteta mare.
Edited by MarianG, 02 June 2015 - 21:37. |
#5
Posted 02 June 2015 - 22:45
Incepe creand tu o functie toupper(char letter). Ai sa vezi ca e foarte usor (pentru ASCII).
|
#6
Posted 03 June 2015 - 10:21
Pai ok , creez functia dar pentru ce o apelez? Ca eu nu stiu pe ce pozitie se afla primele litere , stiu ca dupa spatiu , prima litera identificata sa o faca mare.
[CODE] void trans(char letter) { toupper(letter) } [CODE] Asa ceva? :-?? Si de ce imi cere functia toupper argument de tip int si nu ma lasa cu char, ea fiind functie pt char? Edited by stefanutz13, 03 June 2015 - 10:22. |
#7
Posted 03 June 2015 - 11:25
chiar asa, de ce lucreaza calculatoarele cu numere in format binar si nu cu litere/caractere, eventual cele arabe?
Edited by MarianG, 03 June 2015 - 11:28. |
#8
Posted 03 June 2015 - 11:33
Pentru ca acel format binar poate reprezenta litere?) , idk , explica mi �
|
#9
Posted 03 June 2015 - 11:34
stefanutz13, on 03 iunie 2015 - 10:21, said: void trans(char letter) { toupper(letter) } stefanutz13, on 03 iunie 2015 - 11:33, said:
Pentru ca acel format binar poate reprezenta litere?) , idk , explica mi � |
#10
Posted 03 June 2015 - 11:38
Vad ca dati explicatii gen : "cat face 2+... Sau lasa , zi cat face 4 "Literar , una e litera mare , alta mica. Dpdv al informaticii, A are codul ASCII 65 iar 'a' are 134 ascii + ca fiecare litera este reprezentata altfel binar
Edited by stefanutz13, 03 June 2015 - 11:41. |
|
#11
Posted 03 June 2015 - 11:40
bine, dar la modul binar?
Ca de acolo am plecat si acolo se intampla toata magia! |
#13
Posted 03 June 2015 - 11:43
abia astept sa ajung la servici sa pun mana pe patent .....
si acum ce observi? p.s. http://www.asciitable.com/ Edited by MarianG, 03 June 2015 - 11:46. |
#14
Posted 03 June 2015 - 11:47
Fiecare litera mare este reprez cu 011 si doar se muta acel 1 de la sfarsit pana cand ajunge la acei 11 , dipa care se adauga iar de la sfarsit incepand cate un 1 , iar la litere mici , la fel numai ca sunt reprez cu 01 , si au parte de acelasi mecanism
|
#15
Posted 03 June 2015 - 12:25
Eu zic te mai uiti odata peste codurile ascii, ca de aia ti-le am pus, si sa mai faci o DIFERENTA intre ele.
|
|
#16
Posted 03 June 2015 - 13:21
Te referi la chestia cu compararea? Gen a=97-32 , sau cum o fii in ascii?
|
#17
Posted 03 June 2015 - 16:35
Ok , am reusit , nu a fost greu , gandeam eu prost )
#include <iostream> #include <string.h> using namespace std; int main() { char str[100]; int kon=0; int n=strlen(str); cin.get(str,100); str[0]+= -32; for(int i=0;str[i];i++) { if(str[i]==' ') str[i+1]+= -32; cout<<str[i]; } return 0; } dar daca citesc ceva cu mai multe spatii , gen: ana are mere, imi transforma si afiseaza doar asa: Ana Are, de ce nu ia toate spatiile , o idee? Edited by stefanutz13, 03 June 2015 - 16:37. |
#18
Posted 03 June 2015 - 16:47
Anunturi
Bun venit pe Forumul Softpedia!
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users