Z Pascala na C++ = pomoże ktos?

Forum Komputery
Odpowiedz
24.01.2012 12:47
.:|MP3|.:
1
odpowiedz
.:|MP3|.:
82
Generał

Z Pascala na C++ = pomoże ktos?

Witam, muszę przerobić program z Pascala na C++, mam jednak duże problemy z tym.

Jeśli ktos chciałby mi pomóc niech odezwie sie na gg 40725626

Odwdzięcze sie jakoś...

spoiler start

tak tak czytałem poradniki itp itd jednak mi to nie pomogło

spoiler stop

24.01.2012 12:48
hopkins
2
odpowiedz
hopkins
231
Zaczarowany

A nie mozesz napisac w watku o co dokladnie chodzi?

24.01.2012 12:49
blood
3
odpowiedz
blood
249
Legend
24.01.2012 12:57
.:|MP3|.:
4
odpowiedz
.:|MP3|.:
82
Generał

Chodzi mi konkretnie o przepisanie programu, albo pomoc w tym - kompletnie nie ogarniam pascala i mam z tym spore problemy, próbowałem coś sam zdziałać jednak w ogóle mi to nie wychodzi.
Zależy mi na tym projekcie, ma on sporo linijek kodu i jeśli trzeba będzie to coś zapłace.

24.01.2012 13:02
5
odpowiedz
DEXiu
151
Senator

A konkretniej w czym problem? Ogarnięcie składni Pascala to kwestia godzin, nie lat. I jest niemal dokładne odwzorowanie pomiędzy elementami składni C a Pascala. Gorzej, gdy wchodzi C++ z obiektówką i template'ami, bo tu już klasyczny Pascal niestety nie pomoże.

24.01.2012 14:18
.:|MP3|.:
6
odpowiedz
.:|MP3|.:
82
Generał

Tutaj kod programu:
http://wklej.to/mUNzb

Próbowałem sam coś działac, jednak przerosło to moje umiejętności. Wiem, że nikt nie zrobi mi tego za free dlatego możemy się jakoś dogadać.

24.01.2012 14:29
blood
7
odpowiedz
blood
249
Legend

Pierwsze 235 linii programu. Dalej jest błąd w składni Pascala.

#include "ptoc.h"

/*#include "crt.h"*/
/*#include "dos.h"*/

struct dane ‹
varying_string<20> nazwisko;
varying_string<20> imie;
varying_string<4> rok;
char plec;
›;

byte y; array<1,100,dane> daneos; byte i,co; string baza;

boolean fileexists(string fname)

file<byte> f;

boolean fileexists_result;
assign(f,fname);
/*$I-*/
reset(f);
/*$I+*/
if (ioresult == 0)

close(f);
fileexists_result=true;

else
fileexists_result=false;
return fileexists_result;

string powieksz(string& tekst)

byte cosik;

string powieksz_result;
for( cosik=1; cosik <= length(tekst); cosik ++) tekst[cosik]=upcase(tekst[cosik]);

return powieksz_result;

void writexy(byte x,byte y, string s)

gotoxy(x,y);
output << s;

void ramka(byte x1,byte y1,byte x2,byte y2, string tekst)

byte t;

writexy(x1,y1,chr(201));
writexy(x1,y2,chr(200));
writexy(x2,y1,chr(187));
writexy(x2,y2,chr(188));
for( t=x1+1; t <= x2-1; t ++) writexy(t,y1,chr(205));
for( t=x1+1; t <= x2-1; t ++) writexy(t,y2,chr(205));
for( t=y1+1; t <= y2-1; t ++) writexy(x1,t,chr(186));
for( t=y1+1; t <= y2-1; t ++) writexy(x2,t,chr(186));
writexy(x1+3,y1,tekst);

void nowa()

string nazwa,sciezka; text plik; integer time; char c1;

clrscr;
Lnazwa_sprawdz:
ramka(12,9,70,14," Nowa baza ");
gotoxy(22,11); output << "Podaj nazwe bazy: ";
output << " ";
gotoxy(40,11);
input >> nazwa >> NL;

if (nazwa=="")

gotoxy(22,12);
output << " ";
gotoxy(22,12);
output << "podana nazwa jest nieprawidlowa";
goto Lnazwa_sprawdz;

else

sciezka=string("baz\\")+nazwa+".db";
if (fileexists(sciezka))

gotoxy(22,12);
output << " ";
gotoxy(22,12);
output << "Baza o podanej nazwie juz istnieje";
goto Lnazwa_sprawdz;

else

assign(plik,sciezka);
rewrite(plik);
close(plik);
for( time=3; time >= 1; time --)

gotoxy(22,12);
output << "Baza danych " << nazwa << ".db zostala utworzona (" << time << ')';
delay(1000);

return;


void usun(string nazwa)

text plik; string sciezka,napis; integer z;

clrscr;
sciezka=string("baz\\") + nazwa;
assign(plik,sciezka);
erase(plik);
gotoxy(10,11);
output << "Baza danych " << nazwa << " zostala usunieta";
gotoxy(10,12);
output << "Nacisnij aby kontynuowac...";

input >> NL;

void sortuj_nazwisko()

byte x,koniec,j; dane t;

koniec=i;
for( x=2; x <= koniec; x ++)

for( j=koniec-1; j >= x; j --)

if (daneos[j-1].nazwisko>daneos[j].nazwisko)


t.nazwisko=daneos[j-1].nazwisko;
daneos[j-1].nazwisko=daneos[j].nazwisko;
daneos[j].nazwisko=t.nazwisko;

t.imie=daneos[j-1].imie;
daneos[j-1].imie=daneos[j].imie;
daneos[j].imie=t.imie;

t.rok=daneos[j-1].rok;
daneos[j-1].rok=daneos[j].rok;
daneos[j].rok=t.rok;

t.plec=daneos[j-1].plec;
daneos[j-1].plec=daneos[j].plec;
daneos[j].plec=t.plec;


void sortuj_imie()

byte x,koniec,j; dane t;

koniec=i;
for( x=2; x <= koniec; x ++)

for( j=koniec-1; j >= x; j --)
if (daneos[j-1].imie>daneos[j].imie)

t.nazwisko=daneos[j-1].nazwisko;
daneos[j-1].nazwisko=daneos[j].nazwisko;
daneos[j].nazwisko=t.nazwisko;

t.imie=daneos[j-1].imie;
daneos[j-1].imie=daneos[j].imie;
daneos[j].imie=t.imie;

t.rok=daneos[j-1].rok;
daneos[j-1].rok=daneos[j].rok;
daneos[j].rok=t.rok;

t.plec=daneos[j-1].plec;
daneos[j-1].plec=daneos[j].plec;
daneos[j].plec=t.plec;


void sortuj_rok()

byte x,koniec,j; dane t;

koniec=i;
for( x=2; x <= koniec; x ++)

for( j=koniec-1; j >= x; j --)
if (daneos[j-1].rok>daneos[j].rok)

t.nazwisko=daneos[j-1].nazwisko;
daneos[j-1].nazwisko=daneos[j].nazwisko;
daneos[j].nazwisko=t.nazwisko;

t.imie=daneos[j-1].imie;
daneos[j-1].imie=daneos[j].imie;
daneos[j].imie=t.imie;

t.rok=daneos[j-1].rok;
daneos[j-1].rok=daneos[j].rok;
daneos[j].rok=t.rok;

t.plec=daneos[j-1].plec;
daneos[j-1].plec=daneos[j].plec;
daneos[j].plec=t.plec;


void sortuj_plec()

byte x,koniec,j; dane t;

koniec=i;
for( x=2; x <= koniec; x ++)

for( j=koniec-1; j >= x; j --)
if (daneos[j-1].plec>daneos[j].plec)

t.nazwisko=daneos[j-1].nazwisko;
daneos[j-1].nazwisko=daneos[j].nazwisko;
daneos[j].nazwisko=t.nazwisko;

t.imie=daneos[j-1].imie;
daneos[j-1].imie=daneos[j].imie;
daneos[j].imie=t.imie;

t.rok=daneos[j-1].rok;
daneos[j-1].rok=daneos[j].rok;
daneos[j].rok=t.rok;

t.plec=daneos[j-1].plec;
daneos[j-1].plec=daneos[j].plec;
daneos[j].plec=t.plec;


Popraw składnię w Pascalu, potem ściągnij jakiś program do konwersji Pascala na C i tam gdzie Ci wyrzuci warningi popraw kod ręcznie.

Forum Forum Komputery
Odpowiedz

GRYOnline.pl:

Facebook GRYOnline.pl Instagram GRYOnline.pl X GRYOnline.pl Discord GRYOnline.pl TikTok GRYOnline.pl Podcast GRYOnline.pl WhatsApp GRYOnline.pl LinkedIn GRYOnline.pl Forum GRYOnline.pl

tvgry.pl:

YouTube tvgry.pl TikTok tvgry.pl Instagram tvgry.pl Discord tvgry.pl Facebook tvgry.pl