[ Príspevkov: 8 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
C - retazce

Registrovaný: 19.09.09
Prihlásený: 12.09.13
Príspevky: 359
Témy: 55 | 55
Bydlisko: Rohožník
NapísalOffline : 10.10.2010 21:16 | C - retazce

zdravim pani.

Potrebujem pomoct.
Postup mám premysleny, aj syntax by bola, len jeden prikaz neviem ... teda potrebujem previest cast retazca na integer.
napr. zadam retazec znakov 25154878, a teraz potrebujem prve 2 cisla dat do premenej X, dalsie 2 do Y, obe integer.

viem, ze budem potrebovat pracu s poziciami v retazci, len neviem ako na to ... hladal som aj na nete, no nic podobne som nenasiel.

vdaka


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 10.10.2010 22:18 | C - retazce

no mozes si to cele prelozit na cislo a pracovat ako s cislom :) cize x = trunc(25154878/1000000); y = trunc((25154878-x)/10000); samozrejme ze to ide aj tak ze substringujes vstupny retazec a nasledne konvertujes :)


Offline

Užívateľ
Užívateľ
C - retazce

Registrovaný: 19.09.06
Prihlásený: 26.06.26
Príspevky: 749
Témy: 31 | 31
Bydlisko: Ružomberok&...
NapísalOffline : 10.10.2010 22:23 | C - retazce

no ale toto funguje len do velmi kratkych retazcov. ked trosku pohladas, janof tu mal temu, kde chcel nieco velmi podobne (on chcel hexadecimalne cisla, ale to je iba nadstavba toho tvojho)


Offline

Užívateľ
Užívateľ
C - retazce

Registrovaný: 19.09.09
Prihlásený: 12.09.13
Príspevky: 359
Témy: 55 | 55
Bydlisko: Rohožník
Napísal autor témyOffline : 10.10.2010 22:54 | C - retazce

len aby ste boli v obraze, coho chcem docielit.
Zadam rod.cislo a ono mi to vypise pohlavie, rok, mesiac, den.
syntax podmienok, prácu s hodnotami + urcenie viem urobiť (doteraz som programoval v Pascale, no teraz na VS som v DevC++ naprogramoval zatial 4 programi, toto je moj 5, takze vela skusenosti nemam).

co sa týka toho trunc, tak mi nedokonci program a spadne (pricom rodne cislo som nacitaval ako integer a nasledne pouzil trunc.

Kód:
 int cislo;
      int a;
  printf("zadaj svoje 10miestne rodne cislo bez lomitka:\n");
    scanf("%d",cislo);
    a=cislo;
     
   rok=trunc(a/100000000);


potreboval by som skor priviest na spravny smer, ako mam skonvertovat retazec na cele cisla, teda ked mi uz nefunguje ten trunc, resp. zobrat 1. a 2. (3. a 4. ... n-ty) prvok z retazca a priradit ho do podretazca, ale tam ho zasa tak ci tak zasa skonvertovat na cislo.

ukazka:

Kód:
// cislo bude 8412015555
prikaz <xxx> //do premennej rok nacita hodnotu 84
prikaz <yyy> //do premennej mesiac nacita hodnotu 12


ostane si uz viem porobit, len toto ma brzdi :P
inak vdaka


Offline

Užívateľ
Užívateľ
C - retazce

Registrovaný: 19.09.06
Prihlásený: 26.06.26
Príspevky: 749
Témy: 31 | 31
Bydlisko: Ružomberok&...
NapísalOffline : 10.10.2010 23:05 | C - retazce

ak to chces zrozumitlne, tak
Kód:
//nacitas rodne cislo ako retazec char rod_cis[20];
char pole[10];
memcpy(pole,rod_cis,2);
pole[2]=0;
int rok = atoi(pole);
memcpy(pole,&(rod_cis[2]),2);
int mesiac=atoi(pole);
.
.
.

alebo skaredo
Kód:
//nacitas rodne cislo ako retazec char rod_cis[20];
int rok=10*(rod_cis[0]-0x30)+rod_cis[1]-0x30;
int mesiac = 10*(rod_cis[2]-0x30)+rod_cis[3]-0x30;


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 24.10.10
Prihlásený: 24.10.10
Príspevky: 1
Témy: 0 | 0
NapísalOffline : 24.10.2010 20:19 | C - retazce

zdravim, surne by som potreboval pomoct s jednym skolskym zadanim ide o naprogramovanie obdlznika, trojuholnika a mriezky v C ak by sa nasiel niekto ochotnz tak by som poslal presne zadanie. dakujem


Offline

Čestný člen
Čestný člen
C - retazce

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34 | 34
Bydlisko: Brno
NapísalOffline : 24.10.2010 20:22 | C - retazce

Vid http://www.pcforum.sk/pravidla-citajte-pozorne-pred-zalozenim-temy-vt40103.html. Ak sem hodis konkretny kod a popises, co to ma robit a co nerobi, urcite sa najde niekto, kto ti pomoze.


Offline

Užívateľ
Užívateľ
C - retazce

Registrovaný: 16.02.08
Prihlásený: 08.12.10
Príspevky: 235
Témy: 13 | 13
NapísalOffline : 24.10.2010 23:16 | C - retazce

mack0 píše:
len aby ste boli v obraze, coho chcem docielit.
Zadam rod.cislo a ono mi to vypise pohlavie, rok, mesiac, den.


Pre doplnenie, este by sa patrilo overit, ci je zadany retazec naozaj rodne cislo. Rodne cislo by malo byt delitelne 11.


_________________
Učet je neaktívny.
 [ Príspevkov: 8 ] 


C - retazce



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Dlhé retazce

v Ostatné

19

1258

20.09.2010 14:42

chrono

V tomto fóre nie sú ďalšie neprečítané témy.

Retazce v Jave

v Backend

13

600

11.01.2014 20:42

focko



© 2005 - 2026 PCforum, edited by JanoF