Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pretvaranje velikih slova u mala

[es] :: C/C++ programiranje :: Pretvaranje velikih slova u mala

[ Pregleda: 12843 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Smilebey
Easy Smilebey
Kod kuće

Član broj: 48170
Poruke: 58
*.as54.ze.bih.net.ba.

Sajt: www.art-bike.biz


Profil

icon Pretvaranje velikih slova u mala07.03.2005. u 21:21 - pre 232 meseci
Pa eto ja bi trebao pretvoriti uneseni string koji se sastoji iz velikih slova u male. Npr. RONALDO u ronaldo. Ja sam mislio dodati na char 32 [jer a(97)-A(65)=32]. Mislim da me razumijete, ali mogu li dodati tipu char int vrijednost? Npr.
Code:
int i=97;
 char c=i;

Hvala unaprijed!!!

"Na svetu postoje dve stvari koje su beskonačne. To su univerzum i čovekova glupost. Ali za univerzum nisam baš siguran!"
Albert Einstein
 
Odgovor na temu

xxxrugby

Član broj: 16068
Poruke: 653
*.ericsson.net.

Sajt: www.zagreb-rugby.hr


Profil

icon Re: Pretvaranje velikih slova u mala07.03.2005. u 21:49 - pre 232 meseci
Code:

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
               
int main()
{
    int i = 0; char ch;
    char string[] = "RONALDO";
    
    while( string[i] != '\0' )
    {
        ch = string[i];
        if( isupper(ch) == 1 )
        {
            ch += 32;
        }
        string[i] = ch;
        i++;
    }
    printf("%s\n", string);

     system("PAUSE");
     return 0;
}


xxxrugby: "We are all philosophers, when question is about politics!"
 
Odgovor na temu

Marko Stankovic

Član broj: 11
Poruke: 306
212.200.120.*



Profil

icon Re: Pretvaranje velikih slova u mala08.03.2005. u 00:45 - pre 232 meseci
Samo da dodam da u zaglavlju ctype.h postoji i funkcija tolower() cija je deklaracija:
Code:

int tolower(int ch);

Znaci ona radi tako sto ako je ch veliko slovo za koje postoji malo slovo onda funkcija vraca kod malog slova a ako ch nije slovo onda je povratna vrednost ch, pa kad koristis ovu funkciju nemas potrebe da vrsis proveru da li je u pitanju veliko slovo.
Tako da ako imas recimo string koji je niz karaktera mozes da prebacis u mala slova na sledeci nacin:

Code:

for(i=0;string[i];i++) string[i]=tolower(string[i]);



Inace u c-u tip char je u stvari celobrojni osmobitni tip podataka, tako da su dozvoljene sve operacije koje su dozvoljene nad tipom int, plus c vrsi automatsku konverziju izmedju int i char. Tako da slobodno sabiraj slova.
I drink to make other people interesting.
 
Odgovor na temu

spaka-s
Crna Gora

Član broj: 23693
Poruke: 31
*.crnagora.net.



+1 Profil

icon Re: Pretvaranje velikih slova u mala09.03.2005. u 15:49 - pre 232 meseci
Postoji jos jedna verzija ako ne znas kolika je duzina rijeci i bukvalno si ogranicen da radis sa pozivima vec "giotovih stvari" :)
while(s[i++]!='\o')
{
if((s>='A')&&(s<='Z'))
s=s-('A'-'a');
i++;
}
}
Fora je sto od ASCI vrijednosti VEKLIKOG slova oduzimas ASCI razliku izmedju malih i velikih i dobijas "umanjeno" slovo :)
Poz
Citav zivot je jedna velika aproksimacija ...
 
Odgovor na temu

spaka-s
Crna Gora

Član broj: 23693
Poruke: 31
*.crnagora.net.



+1 Profil

icon Re: Pretvaranje velikih slova u mala09.03.2005. u 15:52 - pre 232 meseci
S tim sto dolje mora da bude s(i) kada se provjerava vrijednost u ASCI kodu i kada se dodaje ispada s(i)=s(i)-('A'-'a') , naravnop umjesto ovih malih zagrada stavljaju se srednje :) ali je bukvalno starnica to zaobisla , sto nazalost nisam znao .
Citav zivot je jedna velika aproksimacija ...
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.nat-pool.po.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Pretvaranje velikih slova u mala09.03.2005. u 16:07 - pre 232 meseci
Borland C++ Builder (sigurno i ostala ozbiljna okruzenja) imaju
vec gotove metode ili zasebne funkcije za rad sa stringovima.

Na primer:

NekiString = NekiString.UpperCase();

ili

NekiString = UpperCase( NekiString );



 
Odgovor na temu

filmil
Filip Miletić
Oce Technologies B.V., inženjer
hardvera
Arcen, NL

Član broj: 243
Poruke: 2114
*.ipact.nl.

Jabber: filmil@jabber.org
ICQ: 36601391


+3 Profil

icon Re: Pretvaranje velikih slova u mala09.03.2005. u 19:10 - pre 232 meseci
Citat:
Fora je sto od ASCI vrijednosti VEKLIKOG slova oduzimas ASCI razliku izmedju malih i velikih i
Ovo nije dobro rešenje jer radi samo za ASCII. Postoje mašine koje koriste EBCDIC kod.

Ispravno rešenje je funkcija toupper() iz zaglavlja ctype.h, koja radi nezavisno od koda koji se koristi.

f
 
Odgovor na temu

deroko

Član broj: 48499
Poruke: 123
*.selcuk.edu.tr.



Profil

icon Re: Pretvaranje velikih slova u mala14.03.2005. u 16:14 - pre 232 meseci
Ma samo or 0x20 i imas mala slova.
Code:

#include <stdio.h>

int main(){
       char a = 'A';
       a|=0x20;
       printf ("%c\n", a);
       return 0;
       
}


 
Odgovor na temu

yooyo

Član broj: 4891
Poruke: 1101
*.nat-pool.bgd.sbb.co.yu.



Profil

icon Re: Pretvaranje velikih slova u mala14.03.2005. u 19:01 - pre 232 meseci
hmm.. a da probas strlwr(str) ili strupr(str) ?

yooyo
 
Odgovor na temu

[es] :: C/C++ programiranje :: Pretvaranje velikih slova u mala

[ Pregleda: 12843 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.