Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - пожалуйста, помогите перевести этот код из паскаля в с++

Ответить
Настройки темы
C/C++ - пожалуйста, помогите перевести этот код из паскаля в с++

Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Очень нужен перевод. Заранее благодарен всем откликнувшимся.

programm kirill_dubikov1_2
uses CRT;
const
n=10;
type
Vector=array [1..n] of integer;
var
mas:Vector;
m,q:Byte;


procedure vivod(var A:Vector);
var i:integer;
begin
writeln('Initial array:');
for i:=1 to n do
write(A[i]:5);
writeln;
end;

procedure vvod_ruchnoi(var A:Vector);
var i:integer;
begin
for i:=1 to n do
begin
write('A[', i, ']= ');
readln(a[i]);
end;
writeln;
vivod(A);
end;

procedure vvod_random(var A:Vector);
var i:integer;
begin
Randomize;
for i:=1 to n do
A[i]:=-10+Random(21);
vivod(A);
end;


procedure zadacha1(var A:Vector);
var
i,k: integer;
sum: real;
begin
vivod(A);
i:=0;
k:=0;
Sum:=0;
repeat
i:=i+1;
if A[i]<0 then
begin
Sum:=Sum+A[i];
k:=k+1;
end;
until (A[i]>0) or (i=n);
if k>0 then
Writeln('Arithmetic mean is ',Sum/k:0:3)
else
Writeln('No such elements!');
end;

procedure zadacha2(var A:Vector);
var
B,C: Vector;
i,Imin,Imax,Min,Max,n1,n2: integer;
begin
vivod(A);
B:=A;
Max:=B[1];
for i:=2 to n do
if B[i]>Max then Max:=B[i];
i:=0;
repeat
i:=i+1;
until B[i]=Max;
Imax:=i;
If Imax=n then
begin
Writeln('First maximal element is the last one!');
n1:=n;
end
else
If Imax=n-1 then
n1:=n-1
else
begin
for i:=Imax+2 to n do B[i-1]:=B[i];
n1:=n-1;
end;
C:=B;
Min:=C[1];
for i:=2 to n1 do
if C[i]<Min then Min:=C[i];
i:=0;
repeat
i:=i+1;
until C[i]=Min;
Imin:=i;
If Imin=n1 then
begin
Writeln('First minimal element is the last one!');
n2:=n1;
end
else
If Imin=n1-1 then
n2:=n1-1
else
begin
for i:=Imin+2 to n1 do C[i-1]:=C[i];
n2:=n1-1;
end;
Writeln('New array:');
For i:=1 to n2 do write(C[i]:5);
writeln;
end;

procedure zadacha3(var A:Vector);
var
i,Izero:integer;
B:Array[1..n+2] of integer;
begin
vivod(A);
for i:=1 to n do B[i]:=A[i];
i:=n+1;
repeat
i:=i-1;
until (A[i]=0) or (i=1);
if (i=1) and (A[i]<>0) then
writeln('No zero elements!')
else
begin
Izero:=i;
if Izero=n then
begin
B[n+1]:=0;
B[n+2]:=0;
end
else
begin
for i:=n downto Izero+1 do B[i+2]:=A[i];
B[Izero+1]:=0;
B[Izero+2]:=0;
end;
Writeln('New array:');
for i:=1 to n+2 do write(B[i]:5);
end;
writeln;
end;

procedure zadacha4(var A:Vector);
var
i: integer;
p: boolean;
begin
vivod(a);
p:=true;
for i:=1 to n-1 do
if a[i]>a[i+1] then p:=false;
Writeln(p);
end;

Begin
ClrScr;
Repeat
WriteLn;
repeat
WriteLn('Elements entering metod:');
WriteLn(' 1 - console');
WriteLn(' 2 - random');
WriteLn(' 3 - exit');
Readln(m);
until (m>0) and (m<4);
if m<3 then
begin
if m=1 then vvod_ruchnoi(mas);
if m=2 then vvod_random(mas);
repeat
Writeln;
WriteLn('Chooze the task:');
WriteLn(' 1 - Arithmetic mean');
WriteLn(' 2 - Excluding of elements');
WriteLn(' 3 - Inserting zeroes');
WriteLn(' 4 - Test of ordering');
WriteLn(' 5 - Exit');
Readln(q);
if (q=0) or (q>5) then q:=5;
Case q of
1: zadacha1(mas);
2: zadacha2(mas);
3: zadacha3(mas);
4: zadacha4(mas);
End;
until q=5;
end;
Until m=3;
End.

Отправлено: 13:33, 29-05-2013

 

Аватара для deviance

Пользователь


Сообщения: 123
Благодарности: 43

Профиль | Отправить PM | Цитировать


Киры4, обрамляйте исходный код тегом CODE.
Никогда еще не видел извращений типа `vvod_ruchnoi` и `Excluding of elements` в пределах одного листинга.

Отправлено: 14:30, 29-05-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата deviance:
извращений типа `vvod_ruchnoi` и `Excluding of elements` в пределах одного листинга »
deviance, «копипаст», что поделаешь.

Отправлено: 16:19, 29-05-2013 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - пожалуйста, помогите перевести этот код из паскаля в с++

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Delphi - Перевести код с Delphi на С ddv122 Программирование и базы данных 12 27-08-2012 12:02
C/C++ - Помогите перевести прогу с паскаля на Си Lesha_dan Программирование и базы данных 6 14-12-2011 22:02
Установка - На ноутбуке есть регистрационный код (наклейка),как установить Windows имея этот код? Bara Microsoft Windows 2000/XP 9 10-02-2010 07:13
Достал этот вирус..помогите пожалуйста. delara Лечение систем от вредоносных программ 1 01-08-2009 09:07




 
Переход