Pagini: 1 ... 3 4 [5] 6   În jos
  Imprimă  
Ajutor Subiect: 001 CMMDC  (Citit de 78625 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
stefan688
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #100 : Aprilie 16, 2013, 19:07:09 »

WTF e bugat compilatorul ?
Cod:
#include <fstream>
using namespace std;
int main()
{
int a, b, r, cmmdc;
ifstream fin(cmmdc.in");
ofstream fout("cmmdc.out");
fin>>a>>b;
r=a%b;
while(r)
{
a=b;
b=r;
r=a%b;
}
if(b<30000)
fout<<b;
}

Imi da 0 pct. ( l-am testat de 5-10 ori si functioneaza perfect. Chiar am inclus si o conditie acolo b<30.000 Neutral
 Brick wall

Foloseste tag-ul code cand postezi cod. Si foloseste un limbaj adecvat.
« Ultima modificare: Aprilie 17, 2013, 00:09:45 de către Paul-Dan Baltescu » Memorat
veleandu
De-al casei
***

Karma: 155
Deconectat Deconectat

Mesaje: 132



Vezi Profilul
« Răspunde #101 : Aprilie 16, 2013, 23:25:10 »

Citat
Daca a si b sunt numere prime intre ele, atunci se va tipari 0
Cu placere Smile
Memorat
Pantea_ICHB
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #102 : Mai 10, 2013, 15:57:15 »

intra in long long??
Memorat
wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #103 : Mai 10, 2013, 19:30:46 »

Intra pe int.
Memorat

omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
Pitiqu
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« Răspunde #104 : Iulie 05, 2013, 21:02:29 »

Salut!  Sunt nou pe comunitatea infoarena si tin sa multumesc anticipat oricui ma va ajuta in aceasta problema si in urmatoarele, caci sigur se vor mai ivi si nu-mi voi gasi singur raspuns...

Acesta este codul me sursa:

#include <fstream>
using namespace std;
 
int main()
    {int a,b;
    ifstream f("cmmdc.in");
    ofstream g("cmmdc.out");
    f>>a>>b;
    if(a==b)
      {g<<0;}
    else
      {
      while(a!=b)
         {if (a>b)
         a=a-b;
         else
         b=b-a;
         }
      g<<a;
      }
    return 0;
}


Primesc numai 50 din cele 100 de puncte si am inteles ca ar trebui cumva ca ar trebui facut cu imparitri.   Poate cineva sa imi explice sau sa lase algoritmul pentru acest program folosind impartirile?   Pur si simplu nu pot sa-l concep.
Memorat
superman_01
Client obisnuit
**

Karma: 14
Deconectat Deconectat

Mesaje: 52



Vezi Profilul
« Răspunde #105 : Iulie 05, 2013, 21:08:10 »

merge si cu scaderi doar ca tu ratezi un caz , atunci cand numerele sunt prime intre ele ( adica a  devine 1 )
pune asa :
 if( a == 1 )
g<<0;
else   g<<a;
si problema e rezolvata . Bafta !
Memorat
Pitiqu
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« Răspunde #106 : Iulie 05, 2013, 21:29:38 »

#include <fstream>
using namespace std;
 
int main()
    {int a,b;
    ifstream f("cmmdc.in");
    ofstream g("cmmdc.out");
    f>>a>>b;
    if(a==1 || b==1 || a==0)
      {g<<0;}
    else
      {
      while(a!=b)
         {if (a>b)
         a=a-b;
         else
         b=b-a;
         }
      g<<a;
      }
    return 0;
}


Tot 50%...  sau poate nu am pus cazul unde trebuia?
Memorat
superman_01
Client obisnuit
**

Karma: 14
Deconectat Deconectat

Mesaje: 52



Vezi Profilul
« Răspunde #107 : Iulie 05, 2013, 21:41:15 »

nu ai pus cazul unde trebuia ...la final ( dupa scaderi ) a -ul tau reprezinta defapt cel mai mare divizor comun pentru a si b . Deci daca el e 1 inseamna ca sunt prime intre ele, si afisezi 0.
 
Memorat
Pitiqu
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« Răspunde #108 : Iulie 05, 2013, 22:24:46 »

Aaah. Prime intre ele. Am inteles!   Mersi mult!
Memorat
Pantea_ICHB
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #109 : Octombrie 07, 2013, 11:26:42 »

 Applause Banana Winner 1st place Rolling on the Floor Laughing
Memorat
alcholistu
Strain


Karma: -2
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #110 : Noiembrie 21, 2013, 19:14:37 »

100 de puncte :
Cod:
#include <fstream>
using namespace std;
int main ()
{
    ifstream f("cmmdc.in");
    ofstream g("cmmdc.out");
    int a,b,c;
    f >> a >> b;
    while (b)
    {
        c=b;
        b=a%b;
        a=c;
    }
    if (a==1)
        a=0;
    g << a;
}
Atentie , va da 50 de pct pt ca trebuie sa se arate 0 daca sunt prime intre ele...
Memorat
MyrmekoMe
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 4



Vezi Profilul
« Răspunde #111 : Decembrie 16, 2013, 19:22:06 »

la mine merge :p
Memorat
aserg
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #112 : Ianuarie 31, 2014, 17:25:58 »

Am facut programul am verificat chiar si valorile de se dau in cerinta 8 si 12 si cmmdc fiind 4,dar cand il pun imi da 0 puncte.Programul l-am facut in C++. (Visual Studio 2012).

#include<iostream>
using namespace std;
int cmmdc(int a, int b)
{
   
   while(a!=b)
   {
      if(a>b)
         a=a-b;
      else
         b=b-a;
   }
   return a;
}
void main()
{
   int a,b;
   cout<<"a="; cin>>a;
   cout<<"b="; cin>>b;
   
   cout<<"Cel mai mare div comun dintre a si b este:"<<cmmdc(a,b)<<endl;
   system("pause");
}

      
Memorat
klamathix
Echipa infoarena
Nu mai tace
*****

Karma: 733
Deconectat Deconectat

Mesaje: 1.216



Vezi Profilul
« Răspunde #113 : Ianuarie 31, 2014, 18:07:38 »

Trebuie sa respecti exact formatul de iesire. Ti se cere doar valoarea celui mai mare divizor comun, nu trebuie sa scrii introducerea in cuvinte Smile.
Memorat
costty94
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #114 : Februarie 10, 2014, 17:38:53 »

De ce imi da eroarea asta? Killed by signal 11(SIGSEGV)
Memorat
radunec
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #115 : Februarie 21, 2014, 20:47:50 »

de ce nu mi se verifica sursa?
Memorat
barabasi_csongor
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #116 : Februarie 26, 2014, 16:28:03 »

E problema cu evaluatoru.Pentru cei ce nu reusesc sa rezolve problema asta aici e o rezolvare de 100 de puncte.

#include <cstdio>

using namespace std;

long long int euclid(long long int a,long long int b)
{
    if(b==0) return a;
    return euclid(b,a%b);
}

int main()
{freopen("cmmdc.in","r",stdin);
freopen("cmmdc.out","w",stdout);
long long int a,b;
scanf("%lld%lld",&a,&b);
long long int x=euclid(a,b);
if(x==1) printf("0");
else printf("%lld",x);
}
Memorat
gedica
Strain


Karma: -7
Deconectat Deconectat

Mesaje: 7



Vezi Profilul
« Răspunde #117 : Martie 07, 2014, 13:24:13 »

Vreau si eu un sfat ce program sa folosesc (sa fie ptr unn incepator ) si care sa mearga pe infoarena adica sa obtin si eu puncte la problemele astea usoare . Eu ma pricep doar in Borland C++ ca asa am invatat la scoala. PLs HelP me  Think Think


Iti sugerez Code::Blocks IDE....dar daca ai Mac poti incerca XCode...
Ps: La olimpiada trebuie sa codezi in Code::Blocks Very Happy
Memorat
theodor.moroianu
Echipa infoarena
Strain
*****

Karma: 0
Deconectat Deconectat

Mesaje: 13



Vezi Profilul
« Răspunde #118 : Martie 29, 2014, 19:38:12 »

foarte ciudat sa returneze 0 in loc de 1 daca cele 2 nr sunt prime intre ele... Eh?
Memorat
wapmaster13
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #119 : Mai 30, 2014, 11:59:21 »

si mie imi da dea 50 puncte pt un program bun,dar asa se intampla cand uiti sa inchizi fisierele text
Memorat
andreidei333
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #120 : Iunie 06, 2014, 15:13:32 »

a fost usoara problema dar am avut probleme cand iam dat run(am code bloks) Applause Brick wall
Memorat
smircea1
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #121 : Iulie 29, 2014, 13:58:53 »

ce spuneti de ideea mea? Think
------------------------
Cod:
#include <fstream>
using namespace std;
ifstream f("cmmdc.in");
ofstream g("cmmdc.out");
int main()
{
    int a,b,i;
    f>>a>>b;
    f.close();
    if(a>b)
 {
     i=a;a=b;b=i;
 }
    for(i=a;i>=2;i--)
      if(b%i==0 && a%i==0)
         {
            g<<i<<endl;
            return 1;
         }
    g<<0;
    g.close();
    return 0;
}
« Ultima modificare: Iulie 29, 2014, 14:59:33 de către Stoica Mircea-Madalin » Memorat
stefan_gheorghe
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #122 : Septembrie 27, 2014, 13:47:53 »

ce e grasit la programul acesta?
   f>>a>>b;
   while (a != b)
  {
    if (a > b)
    {
      a=a-b;
    }
    else
    {
      b=b-a;
    }
  }
if (a!=1)
{
    g<<a;
}
else
{
    g<<'0';
}
    return a;
de fiecare data cand il introduc mi se dau 0 puncte.
Memorat
valen.valentin
Strain


Karma: -2
Deconectat Deconectat

Mesaje: 15



Vezi Profilul
« Răspunde #123 : Septembrie 27, 2014, 15:52:32 »

Incearca sa inveti algoritmul lui euclid.
http://www.infoarena.ro/problema/euclid2
daca vrei sa mearga programul tau acolo in loc de return a ar trebuii return 0.
« Ultima modificare: Septembrie 27, 2014, 16:10:31 de către Valentin Valeanu » Memorat
NullVekt0r
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #124 : Octombrie 01, 2014, 11:40:14 »

Salut,am scris programul ,dar ni functioneaza:( cineva pot sa ajut ,pentru ca nu stiu ce este problema ?

#include <fstream>
#include "stdio.h"
 using namespace std;

int lnko(int z,int y)
{
   int tmp;
 
   if (z<0) z= -z;
   if (y<0) y= -y;
   while(y > 0) {
      tmp = y;
      z = z % y;
      z = tmp;
   }
   return z;
}
 
int main()
{
    ifstream f("cmmdc.in"); 
    ofstream g("cmmdc.out");
 int a,b,e;
  f >> a >> b;
 
e = lnko (a,b);
 if (e>30000)
 return 0;
 else{
  g << e << '\n';
 g.close();
  return 0; 
}}
Memorat
Pagini: 1 ... 3 4 [5] 6   În sus
  Imprimă  
 
Schimbă forumul:  

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