Форум программистов, компьютерный форум CyberForum.ru

перевести с Pascal на C++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ как читать из файла строки и числа http://www.cyberforum.ru/cpp-beginners/thread1133233.html
#include <stdio.h> #include <conio.h> #include <iostream.h> int main() { clrscr(); FILE *file; int k; char mas;
C++ Получить указанную последовательность и вычислить количество ненулевых элементов массива помогите написать прогу целиком( .В одномерном массиве, состоящем из n вещественных элементов: 1) получить последовательность: а-a; a-a, a-a,…,0. 2) вычислить количество ненулевых элементов.using namespace std; int main() { int x = 0; for (int i = 0; i < n; i++) { a -= a; http://www.cyberforum.ru/cpp-beginners/thread1133227.html
Ошибка при использовании OpenMP C++
Как можно отловить ошибку, возникающую при распараллеливании цикла? через try не хочет отлавливать :(
Графические вычисления (GPGPU) C++
Как мне на видеокарте запустить такой код (тоесть чтобы исполняла видеокарта, а не ЦП): #include <iostream> int main (void){ int a=2, b=3; std::cout << a+b; }
C++ Установить иконку .exe-файлу http://www.cyberforum.ru/cpp-beginners/thread1133210.html
Привет, как в проекте установить иконку .exe-файлу ? IDE Code-Blocks
C++ Найти произведение четных чисел, которые входят в интервал (10..20) и (30..40) Операторы цикла: Найти произведение четных чисел, которые не входят в интервал (10..20) и (30..40) (задание должно быть выполнено всеми тремя типами циклов 1. Цикл с предусловием 2. Цикл с постусловием 3. Цикл с параметром не могу составить с 3 циклами((помогите:(( #include<iostream> using namespace std; подробнее

Показать сообщение отдельно
shukaka
4 / 4 / 2
Регистрация: 09.03.2014
Сообщений: 184
29.03.2014, 19:22     перевести с Pascal на C++
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
program lab_7;
uses crt;
var a:array [-1000..1000] of integer;
    b:array [-1000..1000] of integer;
    r:array [-1000..1000] of integer;
    s,z,x:array [-1000..1000] of integer;
    sign1, sign2,n1,n2,i,k,n,m,j,zn,zn1,zn0,t,t1,q:integer;
label l1,l2,l3,p1,p2,p3,h1,h2,h3,lo1,lo3,lo2;
begin
n:=0;
writeln('Введите знак первого РЛ числа:');
readln(zn); //знак первого РЛ-числа
write('Введите количество значущих цыфр, а потом - значащие цифры первого РЛ числа: ');
 
readln(n1);  //количество значущих цыфр первого РЛ-числа
for i:=n1 downto 1 do
begin
readln(a[i]);  //значащие цыфры первого РЛ-числа
end;
writeln('Введите знак 2-го РЛ числа:');
readln(zn1);  //знак второго РЛ-числа
write('Введите количество значущих цыфр, а потом - значащие цифры первого РЛ числа: ');
 
readln(n2);    //количество значущих цыфр второго РЛ-числа
for i:=n2 downto 1 do
begin
readln(b[i]);  //значащие цыфры второго РЛ-числа
end;
 
for i:=n1+n2 downto n1+1 do  //сравнивание 2-х РЛ-чисел
begin
if a[i-n2]<>b[i-n1] then
begin
if a[i-n2]>b[i-n1] then zn0:=zn else zn0:=zn1;  //выбираем знак большого числа
goto p1;
end;
end;
  p1:writeln();  //объединение 2-х РЛ-чисел
for i:=n1+n2 downto 1 do
begin
  r[i]:=a[i]+b[i-n1];  //новое объединенное РЛ-число
end;
l1:for i:=1 to n1+n2-1 do  //сортировка
if r[i]<r[i+1] then
begin //сортировка методом пузырька
    k:=r[i];
    r[i]:=r[i+1];
    r[i+1]:=k;
goto l1;
end;
  m:=n1+n2;
l2:for i:=m downto 2+n do  //преведение подобных в РЛ-числе
begin
if r[i]=r[i-1] then
begin
    r[i]:=r[i]+1;
for j:=i-1 downto 2+n do
    r[j]:=r[j-1];
    n:=n+1;
    l3: for j:=1+n to m-1 do
if r[j]<r[j+1] then   //сортировка методом пузырька
begin
        k:=r[j];
        r[j]:=r[j+1];
        r[j+1]:=k;
goto l3;
end;
goto l2;
end;
end;
 
t:=0;
for i:=n+1 to m do begin  //вывод результата сложения
t:=t+1;
end;
write('Сумма 2-х РЛ-чисел = ',zn0,'.',t,'.');
 
 //Операция вычитания
 
for i:=n+1 to m do
write(r[i],'.');
 
writeln();
k:=1;
for i:=a[n1]-b[1]+1 downto 2 do //разложение чисел для сокращения подобных в двух РЛ-числах
begin
  z[i]:=a[n1]-k;
  k:=k+1;
end;
z[1]:=z[2];
m:=0;
h2:for i:=a[n1]-b[1]+1 downto 1+m do
for j:=n2 downto 1+m do
begin
if z[i]=b[j] then
begin
  k:=i;
  n:=j;
  m:=m+1;
goto h1;
end;
end;
goto h3;
h1: for i:=k downto 1+m do
    z[i]:=z[i-1];
for j:=n downto 1+m do
    b[j]:=b[j-1];
goto h2;
   h3:
for i:=1 to n1-1 do //конечный результат вычитания
begin
   x[i]:=a[i];
end;
for i:=n1 to (a[n1]-b[1]+1-(m+1)+n1) do
begin
   x[i]:=z[m+1+(i-n1)];
end;
 n:=0;    //приведение подобных в РЛ-числе
lo1:for i:=1 to a[n1]-b[1]+1-(m+1)+n1-1 do
if x[i]<x[i+1] then
begin
    k:=x[i];
    x[i]:=x[i+1];
    x[i+1]:=k;
goto lo1;
end;
  q:=a[n1]-b[1]+1-(m+1)+n1;
lo2:for i:=q downto 2+n do
begin
if x[i]=x[i-1] then
begin
    x[i]:=x[i]+1;
for j:=i-1 downto 2+n do
    x[j]:=x[j-1];
    n:=n+1;
    lo3: for j:=1+n to q-1 do
if x[j]<x[j+1] then    //сортировка методом пузырька
begin
        k:=x[j];
        x[j]:=x[j+1];
        x[j+1]:=k;
goto lo3;
end;
goto lo2;
end;
end;  //вывод результата вычитания
write('Вычитание 2-х РЛ-числе = ',zn0,'.',q-n,'.');
for i:=n+1 to q do
write(x[i],'.');
 
end.
помогите плиз перевести
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru