Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 4.134 pregleda

Najnovija ↓

pretvorba koda iz C u C++ 16.01.2005. u 16:47 · pre 265 meseci #1
Pozdrav raja. Da li bi neko mogao da mi pomogne oko prevoda koda iz C u C++.
Molim da pokušate. Hvala

Inače kod u C računa sqrt(2) na 2400 decimala

Code:


main(){int a=1000,b=0,c=1413,d,f[1414],n=800,k;
for(;b<c;f[b++]=14);
for(;n--;d+=*f*a,printf("%.3d",d/a),*f=d%a)
for(d=0,k=c;--k;d/=b,d*=2*k-1)f[k]=(d+=f[k]*a)%(b=100*k);}



Hvala.
Re: pretvorba koda iz C u C++ 16.01.2005. u 17:15 · pre 265 meseci #2
cuj, ako se kompajlira u C++ kompajleru, onda *je* C++. dakle:

na vrh stavi

#include <stdio.h>
moras staviti da main vraca int
kao zadnji statement maina moras staviti return 0;

i mislim da ce to bit to.
Re: pretvorba koda iz C u C++ 16.01.2005. u 17:23 · pre 265 meseci #3
Ma kontam ja to jarane i uradio sam ja to tako ali me zanima da li je to moguće sve prebaciti u c++. Ono bez printf i drugog čisto C++ovski. Ne razumijem kod u c a treba mi u c++
Re: pretvorba koda iz C u C++ 17.01.2005. u 00:45 · pre 265 meseci #4
Jedino sto treba prebaciti da bude bas u stilu c++ jeste printf(), znaci kod bi trebalo da izgleda ovako:

Code:

#include <iostream>
#include <iomanip>

using namespace std;


int main(int argc, char *argv[])
{
   int a=1000,b=0,c=1413,d,f[1414],n=800,k;
   for(;b<c;f[b++]=14);
   for(;n--;d+=*f*a, cout<<setfill('0')<<setw(3)<<d/a,*f=d%a)
   for(d=0,k=c;--k;d/=b,d*=2*k-1)f[k]=(d+=f[k]*a)%(b=100*k);
  
  return 0;
}


printf("%.3d", d/a) je ispisivao zaokruzenu vrednost deljenja i to najmanje tri cifre, znaci recimo racunamo 3/1 na ekranu bi ispisao 003, zato sam stavio manipulator setfill('0') jer u c++ se ne ispisuju te vodece nule i postavio sam sirinu na tri cifre pomocu setw(3), tako da se dobija isti efekat kao i sa printf() funkcijom. Probao sam i tvoju verziju i moju i dobio sam isti ispis, tako da je to to sto se tice pretvorbe ;)

pozdrav
Potpis
I drink to make other people interesting.
Re: pretvorba koda iz C u C++ 17.01.2005. u 01:05 · pre 265 meseci #5
Citat:
Edo_M:
Code:


for(d=0,k=c;--k;d/=b,d*=2*k-1)f[k]=(d+=f[k]*a)%(b=100*k);}




Da li si ti pisao ovo sam ili si dobio od nekoga.
Ako si pisao sam probaj da se klonis ovakvog "ruznog" koda.
Optimizacije se mogu uraditi i na drugi nacin, i bez ovih bocnih efekata.

zvrba ti je dobro rekao to je jedno te isto u ovom slucaju, samo zavisi koji kompajler koristis.
Potpis
Sad mu nije nista, ubio si ga k'o zeca...
Re: pretvorba koda iz C u C++ 18.01.2005. u 00:02 · pre 265 meseci #6
Code:

   for(d=0,k=c;--k;d/=b,d*=2*k-1)f[k]=(d+=f[k]*a)%(b=100*k);
 


Ovaj kod je bas ok. Samo je potrebno malo SPACE-ova da bi bilo citljivije, ali nije ni priblizno komplikovano kako moze da se iskomplikuje neki izraz ;)
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme