1 [Hướng dẫn]Chuyển code Pascal sang C++ Wed Feb 01, 2012 11:14 pm
Admin
Quản trị viên
Đây là code sưu tầm thôi. Đầu tiên save đoạn code chương trình này vào máy rồi... biên dịch thành file EXE.
DownLoad
Sau đó chuyển thử 1 chương trình pascal ví dụ:
DownLoad
Sau đó chuyển thử 1 chương trình pascal ví dụ:
- Code:
{Global Variables}
const MAX=10;
var a: array[1..MAX] of integer;
b: integer;
i:integer;
j:integer;
temp: integer;
function Prime(v: integer): integer;
var t:Integer;
begin
t:= v div 2;
WHILE v mod t >0 do
begin
t:=t-1;
end;
if t =1 THEN
begin
Prime:=1;
end
ELSE
begin
Prime:=0;
end;
end;
function nd(v: integer):integer;
var i :integer;
cnt:integer;
begin
cnt:=0;
i:=2;
WHILE i<v do
begin
if (v mod i)=0 THEN
cnt:=cnt+1;
i:=i+1;
end;
nd:=cnt;
end;
procedure print;
begin
FOR i:=1 to MAX do
begin
write('Element No ',i);
writeln(' :',a[i]);
temp:= nd(a[i]);
if temp > 1 THEN
if prime(temp)=1 THEN
writeln(' OK: ', a[i] );
end;
end;
begin
FOR i:=1 to MAX do
begin
writeln('Enter Element No ',i);
read(a[i]);
end;
FOR i:=1 to MAX-1 do
FOR j:=MAX -1 downto i do
begin
if a[j] > a[j+1] THEN
begin
temp:=a[j];
a[j]:=a[j+1];
a[j+1]:=temp;
end;
end;
print;
end.
- Code:
#include <stdio.h>
/*GLOBAL VARIABLES*/
#define MAX 10
int A[MAX];
int B;
int I;
int J;
int TEMP;
int PRIME(int V)
{
int T;
T=V/2;
WHILE (V%T>0)
{
T=T-1;
}
if (T==1)
{
return 1;
}
ELSE
{
return 0;
}
}
int ND(int V)
{
int I;
int CNT;
CNT=0;
I=2;
WHILE (I<V)
{
if ((V%I)==0)
CNT=CNT+1;
I=I+1;
}
return CNT;
}
void PRINT()
{
FOR(I=1;I<=MAX;I++)
{
printf("ELEMENT NO %d", I);
printf(" :%d\n", A[I-1]);
TEMP=ND(A[I-1]);
if (TEMP>1)
if (PRIME(TEMP)==1)
printf(" OK: %d\n", A[I-1]);
}
}
void main()
{
FOR(I=1;I<=MAX;I++)
{
printf("ENTER ELEMENT NO %d\n", I);
scanf("%d", &A[I-1]);
}
FOR(I=1;I<=MAX-1;I++)
FOR(J=MAX-1;J>=I;J--)
{
if (A[J-1]>A[J+1-1])
{
TEMP=A[J-1];
A[J-1]=A[J+1-1];
A[J+1-1]=TEMP;
}
}
PRINT();
}
/* Program converted successfully.*/