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

кому не лень.сам не смогу просто.кто межет перевести код pascal на c++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Добавление виртуальной функции http://www.cyberforum.ru/cpp-beginners/thread1133190.html
Добрый вечер, требуется показать работу виртуальной функции в данной задаче... Что и как можно тут поменять? #include <conio.h> #include <iostream> #include <locale.h> using namespace std;
C++ Разложить число в массив так, чтобы элементами была последовательность с единицы о этого числа как разложить число и записать в массив....например дано 4 4= 4 3 2 1 в масив записать 4 3 2 1 http://www.cyberforum.ru/cpp-beginners/thread1133181.html
C++ Удалить все повторяющиеся элементы из одномерного массива
Из одномерного массива A(M) удалите все повторяющиеся элементы, оставив первый экземпляр повторяющегося элемента. Массив сожмите. Рекомендуемое кол-во циклических операторов (без ввода и вывода данных): 3
C++ Определить, по какую сторону плоскости точки
Добрый вечер. Нужно обобщить задачу расположения точек относительно прямой на трехмерный случай. Даны 5 точек - A, B, C, X, Y. Несовпадающие точки A, B, C задают плоскость. Нужно определить, находятся ли точки X и Y по одну или по разные стороны от плоскости. Вкурил тему с двумерным случаем, векторные и псевдоскалярные произведения, но как применить для трехмерного случая - не хватает...
C++ Игнорирование пробелов при чтении символов из входного потока http://www.cyberforum.ru/cpp-beginners/thread1133152.html
Задача: нужно найти количество слов в тексте. #include <fstream> #include <iostream> #include <conio.h> using namespace std; int main() { ifstream fin;
C++ Найти в строке матрице последовательность одинаковых элементов с минимальной длиной. Найти в строке матрице две серию(где серия последовательность одинаковых элементов) с минимальной длиной. подробнее

Показать сообщение отдельно
shukaka
4 / 4 / 2
Регистрация: 09.03.2014
Сообщений: 184
29.03.2014, 18:50     кому не лень.сам не смогу просто.кто межет перевести код 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.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru