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

Перевод кода из Паскаля в C++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Виртуальный деструктор на MinGW v4.9.2 http://www.cyberforum.ru/cpp-beginners/thread1780308.html
не знаю как на прошлых версиях, но на этой не работает чисто виртуальный деструктор. проверялось самым обычным тестом class A{ virtual ~A()=0; }; A::~A(){cout<<"~";} class B : public A {};...
C++ Зачем добавлять внутренний блок? Фиксал баг, который заставлял прогу крешать. Но крешать в конце функции после проделанной работы. Нашел в нете, что просто где то в функции какой то кусок кода вылезает при работе за размер стэка,... http://www.cyberforum.ru/cpp-beginners/thread1780296.html
Использование графической библиотеки C++
Здравствуйте, можете подсказать, как подключить библиотеку graphics в CodeBlocks 10.05?
Как создать такую игру C++
как создать такую игру ? точнее думаю куда(в какой компонент) выводить буквы, тут буквы в разброс нету симметрии, еще на их надо нажимать, уже думал или куча кантинок, или кнопок, и как потом...
C++ Простейший класс "Очередь" http://www.cyberforum.ru/cpp-beginners/thread1780230.html
Добрый вечер уважаемые друзья... Вот дошел до классов . И первую задачу я не очень понял . Помогите разжевать . Одному очень сложно. Буду очень благодарен. И почему в ответе она дает ? Содержимое...
C++ Разница в определении конструкторов со списком инициализации и без него Начинаю изучать конструкторы , и в моей книге его объявление выглядит следующим образом class Counter { private : unsigned int count; public : Counter() : count(0) ... подробнее

Показать сообщение отдельно
Лейля
0 / 0 / 0
Регистрация: 23.03.2016
Сообщений: 4

Перевод кода из Паскаля в C++ - C++

13.07.2016, 20:03. Просмотров 174. Ответов 0
Метки (Все метки)

Необходимо перевести из Паскаля в С++, помогите, пожалуйста!!)))


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
uses crt;
const e=0.01;{точность сравнения вещественных чисел}
type Point=record{тип точка}
           x,y:real;
           end;
{площадь треугольника}
function Strg(a,b,c:Point):real;
begin
Strg:=abs((a.x-c.x)*(b.y-c.y)-(b.x-c.x)*(a.y-c.y))/2;
end;
{принадлежит ли точка треугольнику}
function Prin(a,b,c,t:Point):boolean;
var s,s1,s2,s3:real;
begin
{площади 3х маленьких треугольников, образованных
двумя вершинами и точкой}
s1:=Strg(a,b,t);
s2:=Strg(a,c,t);
s3:=Strg(b,c,t);
{площадь самого треугольника}
s:=Strg(a,b,c);
Prin:=(s1>e)and(s2>e)and(s3>e){если все площади маленьких > заданной точности
                              (точки не лежат на сторонах)}
and(abs(s-s1-s2-s3)<=e);{и если площиди маленьких=большому
                         с заданой точностью, то точка внутри треугольника}
end;
 
const nmax=15;{чтобы вошли в строку по щирине экрана}
var m:array[1..nmax] of Point;{множество точек}
    n:integer;{его размер}
    kt,mx:integer;{кол. точек в треугольнике и их максимум}
    imx,jmx,kmx:integer;{номера вершин треугольника с макс. кол. точек}
    i,j,k,p:integer;{счетчики циклов}
begin
randomize;
repeat
write('Количество точек множества от 3 до ',nmax,' n=');
readln(n);
until n in [3..nmax];
writeln('Множество:');
for i:=1 to n do
 begin
  m[i].x:=10*random;
  m[i].y:=10*random;
 end;
write(' ':2);
for i:=1 to n do
write(i:5);
writeln;
write('X:');
for i:=1 to n do
write(m[i].x:5:2);
writeln;
write('Y:');
for i:=1 to n do
write(m[i].y:5:2);
writeln;
mx:=0;
{перебираем треугольники из множества и ищем в каком больше точек}
for i:=1 to n-2 do
for j:=i+1 to n-1 do
for k:=j+1 to n do
 begin
  kt:=0;
  for p:=1 to n do
  if Prin(m[i],m[j],m[k],m[p]) then kt:=kt+1;
  if kt>mx then
   begin
    mx:=kt;
    imx:=i;
    jmx:=j;
    kmx:=k;
   end;
 end;
writeln('Максимальное количество точек в треугольнике');
writeln(imx,'(',m[imx].x:0:2,';',m[imx].y:0:2,')');
writeln(jmx,'(',m[jmx].x:0:2,';',m[jmx].y:0:2,')');
writeln(kmx,'(',m[kmx].x:0:2,';',m[kmx].y:0:2,')');
writeln('Количество точек=',mx);
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru