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

c++ Brojevi u tekst

[es] :: C/C++ programiranje :: c++ Brojevi u tekst

[ Pregleda: 4211 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

jasna7b
jasna bišof

Član broj: 18380
Poruke: 1
*.net.globalnet.hr



Profil

icon c++ Brojevi u tekst30.12.2003. u 09:11 - pre 254 meseci
Pozdrav svima,
Trebao bi mi kod za ispis brojeva u tekst za seminar pa ako netko ima bila bih zahvalna.
Sve najbolje u Novoj godini !!!
 
Odgovor na temu

Goran Rakić
Beograd

Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: c++ Brojevi u tekst30.12.2003. u 13:09 - pre 254 meseci
imaš na praktikum.co.yu rešenje za ms excell u VBA, ali algoritam je taj. U principu ti trebaju leksička pravila za izgovor i onda kreneš sa celobrojnim deljenjem najvećim stpenom 10-tke (10 na broj cifara) i onga dobiješ broj hiljada, stotina hiljada, miliona... pa onda delš sa za stepen manjim brojem... Uvek paziš da ide 1 hiljada, 2-4 hiljade, 5-9 hiljada.
http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
 
Odgovor na temu

blaza
n/a

Član broj: 961
Poruke: 743
*.vdial.verat.net



+3 Profil

icon Re: c++ Brojevi u tekst30.12.2003. u 19:47 - pre 254 meseci
Evo, danas sam dobre volje, pa cu ti pomoci.
Ali, nemoj samo da promenis hiljade u tisuce i cife u znamenke, vec malo prouci program, princip rada i sl.
Na kraju krajeva, cilj seminarskog rada je da nesto naucis.
Napisao sam ovo na brzaka, i koliko sam probao radi, osim sto ima jedan bug, koji me mrzi da prepravim.
Naime, program koristi \b karaktere, odnosno backspace da ispravi npr. hiljada u hiljade, znaci postupak je sledeci:
ispisuje se hiljada, \b, e, respektivno. Ako se desi da npr. po ispisu hiljada program predje u novi red,
backspace karakter koji sledi nece vratiti kurzor u prosli red, vec ce ostati u mestu, pa ce doci do greske u ispisu.

Ovo mozes korigovati na vise nacina...

Code:

#include <iostream.h>

enum Cifre {MILIJARDE, MILIONI, HILJADE, JEDINICE};
char* cCifre[10]  = "" ,"jedan", "dva", "tri", "cetiri", "pet", "sest", 
"sedam", "osam", "devet"};
char* cStotine[10]  = {"", "\b\b  \b\b\b\b\b", "\be", "", "\b\b\bri", "", 
"\b\b", "", "", ""};
char* cDesetice[10] = {"", "\b\b\b\b\b", "", "", "\b\b\br", "\b", 
"\b", "", "", "\b"};
char* cNaest[10]    = {"", "\b", "", "", "\b\b\br", "", "", "", "", ""};
char* cMilijarda    = "iaeeeiiiii";
char* cMilion       = "a aaaaaaaa";
char* cHiljada      = "aaeeeaaaaa";

void NapisiGrupu(int nG, Cifre eCifre)
{
   int nTemp, nTemp2;
   if(nG)
   {
      nTemp = nG / 100;
      nTemp2 = nG;
      if(nTemp)
         cout << cCifre[nTemp] << cStotine[nTemp] << "sto";
      nTemp = (nG / 10) % 10;
      nTemp2 %= 100;
      if((nTemp > 1 ) || (nTemp2 == 10))
         cout << cCifre[nTemp] << cDesetice[nTemp] << "deset";
      nTemp2 %= 10;
      if((nTemp == 1) && (nTemp2))
      {
         cout << cCifre[nTemp2] << cNaest[nTemp2] << "naest";
         nTemp2 = 5;
      }
      else
         if(nG % 100)
            cout << cCifre[nTemp2];        
      if((eCifre == MILIJARDE) || (eCifre == HILJADE))
         switch(nTemp2)
         {
            case 1:
               cout << "\b\bna";
               break;
            case 2:
               cout << "\be";
         }    
      switch(eCifre)
      {
         case MILIJARDE:
            cout << " milijard" << cMilijarda[nTemp2];
            break;
         case MILIONI:
            cout << " milion" << cMilion[nTemp2];
            break;
         case HILJADE:
            cout << " hiljad" << cHiljada[nTemp2];
      }
   }
   cout << " ";
}

void NapisiBroj(unsigned long ulBr)
{
   if (ulBr)
   {
      NapisiGrupu(ulBr / 1000000000       , MILIJARDE);
      NapisiGrupu((ulBr / 1000000) % 1000 , MILIONI);
      NapisiGrupu((ulBr / 1000) % 1000    , HILJADE);
      NapisiGrupu(ulBr % 1000             , JEDINICE);
   }    
   else
   cout << "nula";    
}

int main(int argc, char* argv[])
{
   unsigned long ulX;
    
   cout << "\nUnesi broj (0<x<4294967296) :";
   cin >> ulX;
   cout << "\n";
   NapisiBroj(ulX);
   cout << "\n";

   return 0;
}

O_o
 
Odgovor na temu

Rapaic Rajko
Bgd

Član broj: 4105
Poruke: 810
80.93.225.*



+62 Profil

icon Re: c++ Brojevi u tekst06.01.2004. u 08:29 - pre 254 meseci
Odzvanja li to gromoglasno "hvala"...?
:))))

Rajko
 
Odgovor na temu

leka
Dejan Lekić
senior software engineer, 3Developers
Ltd.
London, UK

Član broj: 234
Poruke: 2534
*.racasse.se

Sajt: dejan.lekic.org


+2 Profil

icon Re: c++ Brojevi u tekst21.01.2004. u 10:28 - pre 254 meseci
Dev-C++ i VisualC++ se mnogo razlikuju, i koncepcijski a i na druge
nacine. Predlazem ti da pocnes prvo da ucis osnove C++ jezika - za ovo
ti moze posluziti bilo kakav IDE, pa cak i notepad (onda moras da naucis
kako da kompajliras program :). Ako zelis, mogu napisati jedan maleni
tekst na ovu temu i "okaciti" negde...
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
 
Odgovor na temu

vrag NL
ivan mihaljevic
nizozemska

Član broj: 16011
Poruke: 14
*.speed.planet.nl



Profil

icon Re: c++ Brojevi u tekst21.01.2004. u 18:06 - pre 254 meseci
ok uradi to PLZ
ali ja vec znam neke gluposti u dev c++ znam napraviti digitron i tako nesto
 
Odgovor na temu

blaza
n/a

Član broj: 961
Poruke: 743
*.vdial.verat.net



+3 Profil

icon Re: c++ Brojevi u tekst22.01.2004. u 03:24 - pre 254 meseci

O_o
Prikačeni fajlovi
 
Odgovor na temu

[es] :: C/C++ programiranje :: c++ Brojevi u tekst

[ Pregleda: 4211 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

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