Pagini: 1 [2] 3   În jos
  Imprimă  
Ajutor Subiect: 391 Sosete  (Citit de 15838 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
gabitzish1
Moderatori infoarena
Nu mai tace
*****

Karma: 321
Deconectat Deconectat

Mesaje: 926



Vezi Profilul
« Răspunde #25 : Iunie 07, 2007, 10:29:26 »

Si eu aveam probleme cu numerele mari.. dar nu era de la citire... doar greseam implementarea operatiilor.... citirea ta mi se pare buna...
Memorat
silviug
Echipa infoarena
Nu mai tace
*****

Karma: 193
Deconectat Deconectat

Mesaje: 485



Vezi Profilul
« Răspunde #26 : Iunie 07, 2007, 11:00:37 »

E destul de periculoasa citirea ta. Daca ai newline dupa al doilea numar tu il iei ca cifra.

Cel mai sanatos e sa citesti cam asa:

Cod:
char nr1[MAX_LENGTH], nr2[MAX_LENGTH];
fscanf(f, "%s %s", nr1, nr2);
Memorat

"Don't gain the world and lose your soul, wisdom is better than silver or gold." [Bob Marley - Jamaican reggae musician & singer (1945 - 1981)]
gabor_oliviu1991
Nu mai tace
*****

Karma: 28
Deconectat Deconectat

Mesaje: 200



Vezi Profilul
« Răspunde #27 : Mai 13, 2008, 23:59:12 »

la voi pentru 156452123 4165411 va da 1303374767408052 Huh...
Memorat
gabitzish1
Moderatori infoarena
Nu mai tace
*****

Karma: 321
Deconectat Deconectat

Mesaje: 926



Vezi Profilul
« Răspunde #28 : Mai 14, 2008, 15:19:42 »

Da, "la noi ne da" cat iti da si tie Tongue
Memorat
gabor_oliviu1991
Nu mai tace
*****

Karma: 28
Deconectat Deconectat

Mesaje: 200



Vezi Profilul
« Răspunde #29 : Mai 14, 2008, 15:38:39 »

deci am aplicat formula pe numere mari... si nu prind niciun test de la 11->20, care is pe numere mari (am trimis formula pe nr mici si am prins primele 10 teste)... si nu imi dau seama unde gresesc... si din cate vad, pe exemplul postat mai sus imi iese programul...daka aveti ceva idei...

P.S: de cat ati declarat vectorii ? Huh

[later edit]: nu conteaza, declaram un vector de 30 de elemente, si trebuia mai mare:D...sper sa nu gresesc si la olimpiada asa:p
« Ultima modificare: Mai 14, 2008, 16:05:37 de către gaboru corupt » Memorat
Florian
Nu mai tace
*****

Karma: 125
Deconectat Deconectat

Mesaje: 832



Vezi Profilul
« Răspunde #30 : Mai 14, 2008, 19:35:14 »

sper sa nu gresesc si la olimpiada asa:p

Nu`ti fa griji. Mai ai un an la dispozitie ca sa inveti sa nu faci greseala asta.  Very Happy [ pana la olimpiada]
Memorat
c_e_manu
Nu mai tace
*****

Karma: 56
Deconectat Deconectat

Mesaje: 243



Vezi Profilul
« Răspunde #31 : Mai 14, 2008, 21:43:38 »

Am incercat si eu problema asta... iau doar 40 de puncte... din moment ce iau pcte inseamna ca formula e buna... apoi banuiesc ca si operatiile pe numere mari... chiar am urmarit pas cu pas un test mai mare si e ok... nu inteleg de ce iau KBS11... am declarat vectorii peste 1000 asa ca sigur intra numerele... Are cineva vreo idee? Think pls Cry

[edit]: am descoperit greseala... pentru 40, respectiv 50 de puncte declaram vectorii in felul urmator:
Cod:
int v[2001]
imediat cum am facut cv de genul
Cod:
#define n 2001
int v[n]
am luat 100 Aha... imi poate explica cineva diferenta pls?
« Ultima modificare: Mai 15, 2008, 00:04:47 de către Emanuel Cinca » Memorat
wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #32 : Mai 15, 2008, 13:56:03 »

In sursa de 50 aloci local in functia main vectorii s1 si s2. Daca ii declari global ar trebui sa mearga.
Memorat

omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
c_e_manu
Nu mai tace
*****

Karma: 56
Deconectat Deconectat

Mesaje: 243



Vezi Profilul
« Răspunde #33 : Mai 15, 2008, 14:44:05 »

da...aia a fost inca o modificare ce am facut-o Very Happy...dar nu am obs decat acuma cand mi-ai zis... dar totusi care e diferenta dintre cele 2 tipuri de declaratii? Confused
Memorat
stef2n
Nu mai tace
*****

Karma: 218
Deconectat Deconectat

Mesaje: 641



Vezi Profilul
« Răspunde #34 : Mai 15, 2008, 14:48:28 »

Variabilele globale se aloca in heap, iar cele locale in stiva calculatorului. De obicei stiva are o limita mult mai stransa.
Memorat

Exista 10 categorii de oameni: cei care inteleg sistemul binar si cei care nu il inteleg.
c_e_manu
Nu mai tace
*****

Karma: 56
Deconectat Deconectat

Mesaje: 243



Vezi Profilul
« Răspunde #35 : Mai 15, 2008, 15:21:31 »

nu la asta ma refer... faptul ca stiva e mai restrictiva stiam... dar diferenta dintre
Cod:
int v[2001]
si
Cod:
#define n 2001
int v[n]

Imi cer scuza daca va stresez Embarassed, dar inainte credeam ca nu conteaza aceste detalii...dar am obs ca sunt foarte importante si as vrea sa le aflu Very Happy
Memorat
Mishu91
Nu mai tace
*****

Karma: 169
Deconectat Deconectat

Mesaje: 751



Vezi Profilul
« Răspunde #36 : Mai 15, 2008, 15:36:08 »

nu la asta ma refer... faptul ca stiva e mai restrictiva stiam... dar diferenta dintre
Cod:
int v[2001]
si
Cod:
#define n 2001
int v[n]

Este acelasi lucru, nu-i nicio diferenta. Daca de exemplu ai multi vectori de declarat e mai comod de scris
Cod:
#define N 2001
int v1[N],v2[N],v3[N],...
Memorat
c_e_manu
Nu mai tace
*****

Karma: 56
Deconectat Deconectat

Mesaje: 243



Vezi Profilul
« Răspunde #37 : Mai 15, 2008, 15:40:29 »

Aha...ok... ms mult! peacefingers
Memorat
andrici_cezar
De-al casei
***

Karma: -47
Deconectat Deconectat

Mesaje: 121



Vezi Profilul
« Răspunde #38 : Aprilie 23, 2009, 17:59:15 »

Eu sunt incepator in C++, dar ma descurc inafara de stringuri, adica cum pot intoarce un string pe dos fara functia strrcv care nu exista pe compilatorul Infoarenei.
Adica daca am
Cod:
15679
sa imi afiseze
Cod:
97651

Cu asta nu ar trebui sa mearga?
Cod:
for (i=0;i<nn/2;i++)
    {
    aux=n[i];
    n[i]=n[nn-i];
    n[nn-i]=aux;
    }
Memorat
c_e_manu
Nu mai tace
*****

Karma: 56
Deconectat Deconectat

Mesaje: 243



Vezi Profilul
« Răspunde #39 : Aprilie 23, 2009, 18:52:08 »

Cred ca acolo ar trebui nn<=n/2
Memorat
andrici_cezar
De-al casei
***

Karma: -47
Deconectat Deconectat

Mesaje: 121



Vezi Profilul
« Răspunde #40 : Aprilie 23, 2009, 19:02:29 »

Cred ca acolo ar trebui nn<=n/2
nu merge:D sunt declarate char n[1001] si de la "156452123" se face ""
Memorat
gabor_oliviu1991
Nu mai tace
*****

Karma: 28
Deconectat Deconectat

Mesaje: 200



Vezi Profilul
« Răspunde #41 : Aprilie 23, 2009, 19:48:54 »

Cod:
lung = strlen(sir);
for(i = 0; i < lung/2; i++) {
      aux = sir[i];
      sir[i] = sir[lung-i-1];
      sir[lung-i-1] = aux; }

Nu l-am incercat dar cel mai probabil merge.
Memorat
andrici_cezar
De-al casei
***

Karma: -47
Deconectat Deconectat

Mesaje: 121



Vezi Profilul
« Răspunde #42 : Aprilie 23, 2009, 20:17:28 »

ms a mers Very Happy Ok acuma am o greseala in program si o sa o rezolv eu

Nu gasesc greseala ma poate ajuta cineva?
De ce daca n="72" si c="1" programu meu face "\a\x2" si c="\x1"
Cod:
for (i=0;i<nn;i++)
    n[i]=n[i]-48;
for (i=0;i<cc;i++)
    c[i]=c[i]-48;
« Ultima modificare: Aprilie 24, 2009, 14:39:17 de către Andrici Cezar » Memorat
Florian
Nu mai tace
*****

Karma: 125
Deconectat Deconectat

Mesaje: 832



Vezi Profilul
« Răspunde #43 : Aprilie 24, 2009, 14:49:16 »

Pai de ce scazi 48 ? Ce anume vrei sa transformi ?
Memorat
CezarMocan
Nu mai tace
*****

Karma: 252
Deconectat Deconectat

Mesaje: 567



Vezi Profilul
« Răspunde #44 : Aprilie 24, 2009, 15:02:55 »

48 e codul ascii al lui '0'.
Partea pe care o faci tu acolo pare in regula, o fi problema de altundeva (nn-ul facut prost sau ceva... Confused )
Memorat
gabor_oliviu1991
Nu mai tace
*****

Karma: 28
Deconectat Deconectat

Mesaje: 200



Vezi Profilul
« Răspunde #45 : Aprilie 24, 2009, 15:12:06 »

Da, scade 48 <=> '0' dar vectorul ramane de tip char. Si cand afiseaza afiseaza (char)n[ i ], si trebuie afisat (int)n[ i ].
Memorat
andrici_cezar
De-al casei
***

Karma: -47
Deconectat Deconectat

Mesaje: 121



Vezi Profilul
« Răspunde #46 : Aprilie 24, 2009, 15:35:55 »

Cod:
nn=strlen(n);
cc=strlen(c);

afisez cu int(n[i ])
pe testul 19 3 face bine, adica il transforma in numar dar pentru 27 1 face ce am zis mai sus:D
« Ultima modificare: Aprilie 24, 2009, 16:18:21 de către Sima Cotizo » Memorat
Magnus
Client obisnuit
**

Karma: 0
Deconectat Deconectat

Mesaje: 57



Vezi Profilul
« Răspunde #47 : Iunie 05, 2009, 11:23:47 »

Poate cineva sa-mi spuna si mie unde gresesc?
Iau doar 0 puncte si nu stiu de ce, nu ma refer la testele cu MLE.
Cu testele mele merge.
Fighting Brick wall
Memorat
c_e_manu
Nu mai tace
*****

Karma: 56
Deconectat Deconectat

Mesaje: 243



Vezi Profilul
« Răspunde #48 : Iunie 06, 2009, 12:57:23 »

Poate cineva sa-mi spuna si mie unde gresesc?
Iau doar 0 puncte si nu stiu de ce, nu ma refer la testele cu MLE.
Cu testele mele merge.
Fighting Brick wall


Daca nu ne prezinti ideea, nu avem cum sa te ajutam.
Memorat
miculprogramator
Nu mai tace
*****

Karma: 65
Deconectat Deconectat

Mesaje: 306



Vezi Profilul
« Răspunde #49 : August 05, 2009, 15:09:18 »

Am facut problema de 50 de puncte si acum ma apucasem sa implementez pe nr mari. Pana la urma N si C sunt pe acceasi linie sau nu ? Am implementat citirea din fisier astfel:

Cod:
i=0;
    while (!f.eof() )
          {
          f.get(temp);
          if ( (temp=='\r') || (temp=='\n') || (!isdigit(temp) ) ) break;
          s[i]=temp;
          i++;
          }
   s[i]='\0';  //inchei cu NULL
   N[0]=strlen(s);
   for (i=N[0]-1;i>=0;i--)
       N[N[0]-i]=s[i]-'0';
   for (i=N[0]+1;i<LG_MAX;i++)
       N[i]=0;
   afisare(N);  //afisez N
   i=0;
   while (!f.eof() )  //acum il iau pe C
          {
          f.get(ch);
          if ( (ch=='\r') || (ch=='\n') || (!isdigit(ch) ) ) break;
          sir[i]=ch;
          i++;
          }
   sir[i]='\0';  //inchei cu NULL
   C[0]=strlen(sir);
   for (i=C[0]-1;i>=0;i--)
       C[C[0]-i]=sir[i]-'0';
   for (i=C[0]+1;i<LG_MAX;i++)
       C[i]=0;
   cout<<endl;
   afisare(C);

Afiseaza 27 (doar N) . Ma puteti ajuta.  sad
Memorat
Pagini: 1 [2] 3   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines