» »

čitanje črk

čitanje črk

Defero ::

Oj vsi, jaz sem bolj začetnik še v tem tak da, go easy on me :D in verjamem da je veliko napak !
Zdej mene zanima ko vpišemo naprimer znake in pol v neskončkni zanki to not shanimo (ne vem če je to prav ne) ampak pol pa bi rad da bi znak po znak čitalo in ko ti pišeš te črke da bi dokler ne vpišeš x-a končalo.

Torej mi pišemo znake in ko vpišemo: x se program auto konča
Ali se lahko to reči z kaj takim:

cout << "vpisi besedilo";
 while(1) {
        znak=getch();
        if(znak=='x')
              break;
 }
  • spremenil: Primoz ()

Vesoljc ::

char znak;
while (znak != 'x')
{
   cin >> znak;
}
Abnormal behavior of abnormal brain makes me normal...

hatch ::

vesoljc, tvoj primer zahteva pritisk returna na koncu.

uporaba getch() je uredu.. mal sem ze pozabil, sam ce si v no-delay modu moras uporabiti se kbhit()

Gundolf ::

Zakaj sprasujes, ce imas kodo ze napisano? Pozeni jo pa bos videl :)

Koda sicer izgleda v redu, drugace pa ni pametno mesati C++ IO funkcij in razredov (cout, cin, ...) z Cjevskimi funkcijami (getch()).

Defero ::

Ja sam kaj mene žere zdej tuki... da jaz bom najprej vpisoval druge znake naprimer:
gksjalpltepaekoaklmvda pol pa o bo x bo konc programa in še samoglasnike moram prešteti. To pomeni da x ni na prvem mestu in da mi pol ne zapre več! :(

Defero ::

evo mi je ratalo rašiti problem!
hvala vseeno: rešitev se glasi če zanima koga:

{
    char znak;
    int a=0,e=0,i=0,o=0,u=0;
    printf("Vpisite besedilo\n");
    while(1)
    {
        znak = getch();
        cout((znak; 
        
          if(znak=='a' || znak=='A')
        {a++;}
        else if('e'==znak || 'E'==znak)
        {e++;}
        else if(znak=='i' || znak=='I')
        {i++;}
        else if(znak=='o' || znak=='O')
        {o++;}
        else if(znak=='u' || znak=='U')
        {u++;} 
    if('x'==znak)
          {
              cout(("Vpisali ste "((a((" samoglasnika a"((endl;
              cout(("Vpisali ste "((e((" samoglasnika e"((endl;
              cout(("Vpisali ste "((i((" samoglasnika i"((endl;
              cout(("Vpisali ste "((o((" samoglasnika o"((endl;
              cout(("Vpisali ste "((u((" samoglasnika u"((endl;
          
           system("PAUSE");
           return 0;
          }
    }
}


[edit - preberi članek vodič po slo-techu, kjer ti lepo piše kako pravilno prikažeš programsko kodo! - vsc]

Zgodovina sprememb…

  • spremenil: Vesoljc ()

rasta ::

Grda koda.
Ne bi namesto tistega while(1) in if-stavka na koncu raje uporabil do-while?
Pa namesto nepreglednega if-else-anja case(tolower(znak))?
Pa namesto tavžent spremenljivk poimenovanih od a-z, kakšno tabelo?

BigWhale ::

Rasta najbolje, da kar en COM server spise, tako na hitro, potem pa clienta, ki se ne bo ukvarjal s tem, kaj uporabnik vpisuje ampak bo podatke (seveda mora biti se SSL layer spodaj) posiljal COM strezniku, ki bo stel crke in potem vrnil XML rezultat.

A ne? Jasno, vsako stvar narediti tako kot treba.
;)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C++]Brisanje strukture

Oddelek: Programiranje
71357 (1288) jernejf
»

[C++] - Tolmačenje povedi in izvedba operacij nad števkami

Oddelek: Programiranje
353187 (2423) jernejl
»

[C++] Nasvet pri char konstantah

Oddelek: Programiranje
6972 (893) zhigatsey
»

[C] preprost program

Oddelek: Programiranje
131380 (1217) pitagora
»

c++ datoteke

Oddelek: Programiranje
463836 (3325) Vesoljc

Več podobnih tem