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

Перевод из pascal в c++ (мигающие кружки) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как переопределить дружественную функцию ввода для класса наследника http://www.cyberforum.ru/cpp-beginners/thread1179275.html
Есть класс предок, который имеет такую вот дружественную функцию ввода: friend ifstream & operator >>(ifstream & inf, Tovar & obj) //Дружественная перегрузка оператора ввода { inf >> obj.nameT >> obj.countryT >> obj.amountT; return inf; } и есть класс наследник с 2мя дополнительными полями double priceT и bool perishableT
C++ Переделать из файлового вывода в консольный Помогите пожалуйста! У меня есть задача готовая, но там файловый ввод-вывод. Но мне очень нужно переделать все это в обычный вид, через cout, чтобы все вводить в компиляторе. #include "stdafx.h" #include <iostream> #include <fstream> using namespace std; struct Student http://www.cyberforum.ru/cpp-beginners/thread1179257.html
C++ Найти в каждом числе количество четных и нечетных цифр
Вводится последовательность из N целых чисел. Найти в каждом числе количество четных и нечетных цифр (функциями оформить определение количества четных и нечетных цифр числа).В 17 и 19 строчке выбивает ошибку, помогите пожалуйста((( #include "stdafx.h" #include <iostream> #include <cstring> #include <math.h> using namespace std;
Вычисление суммы членов ряда C++
Сложность вызывает сама математика ибо вообщем не представляю решения данного примера. Было где-то, но... http://floomby.ru/s1/gWjaZR и это получается также? http://floomby.ru/s1/8WjYgw
C++ Очистить динамическую память, выделенную под член структуры http://www.cyberforum.ru/cpp-beginners/thread1179207.html
Объявление и инициализация объекта: pupil B = Constructor("MyName", 18, 50); Сама структура: struct pupil{ public: char *name = new char; int age; float rating; }; Нужно в отдельной функции очистить память, выделенную под name.
C++ Работа с базой данных, содержащей записи со сведениями о студентах #include "stdafx.h" #include <ctime> #include <stdlib.h> #include <fstream> #include <iostream> using namespace std; struct stud { подробнее

Показать сообщение отдельно
mariklozik
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 52
19.05.2014, 03:01  [ТС]     Перевод из pascal в c++ (мигающие кружки)
Добавлено через 44 секунды
Переписал, должно работать. Помогите, пож. без вас никудаю Нету возможности компильнуть у сеья
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
Uses crt, graph;
Const N=50; M=50; jj=1;
Var i,j,k,l,u, Gd, Gm : integer; p: real; h,E,EE,dE,x,a,fi,fi1,fi2 : real;
s : array [1..N,1..M] of real; Label metka;
Procedure Energy;
Var i,j : integer;
begin E:=0; dE:=O;
For i:=2 to N-1 do For j:=2 to M-1 do begin
E=E-jj*(s[i,j]*s[i+1,j]+s[i,j]*s[i-1,j]+s[i,j]*s[i,j+1]+s[i,j]*s[i,j-1]
+0.7*(s[i,j]*s[i+1,j+1]+s[i,j]*s[i-1,j-1]+s[i,j]*s[i-1,j+1]+s[i,j]*s[i+1,j-1]+)); end;
for i:=2 to N-1 do For j:=2 to M-1 do begin
h:=0; If (i>0.6*N)and(j>0.6*M) then h:=-0.05;
If (i<0.4*N)and(j<0.4*M) then h:=0.05;
dE:=dE-h*s[i,j]; end; E:=E+dE;
end;
Procedure Draw;
Var i,j : integer;
begin cleardevice; For i:=1 to N do begin
Forj:=1 to M do begin If s[i,j]=1 then begin
circle(7*i,7*j,1); circle(7*i,7*j,2); circle(7*i,7*j,3); end;
If s[i,j]=0 then circle(7*i,7*j,1); end; end; end;
BEGIN
Gd:= Detect; lnitGraph(Gd, Gm, 'c:\bp\bgi');
If GraphResult <> grOk then Halt(1);
Randomize; for i:=1 to N do for j:=1 to M do
begin p:=Random(100)/100; s[i,j]:=0;
If p<0.33 then s[i,j]:=-1; If p>0.66 then s[i,j]:=1;
end; Draw;
Repeat For k:=1 to round(N*M/10) do begin Energy; EE:=E;
i:=1+round(random(N-2)); j:=1+round(random(M-2));
If s[i,j]=1 then begin u:=1; s[i,j]:=O; goto metka; end;
If s[i,j]=-1 then begin u:=-1; s[i,j]:=0; goto metka; end;
If (s[i,j]=0)and(random(100)>50) then s[i,j]:=-1 else s[i,j]:=1;
u:=0; metka: Energy; If (E>EE) then s[i,j]:=u;
end;
Energy; Draw; until KeyPressed;
Repeat until KeyPressed; CloseGraph;
END.
Добавлено через 1 минуту
Нечайно редактировал пост, тема не апнулась. Еще раз прошу помощи, спасибо
Ето модель Изинга для феромагнетика

Добавлено через 10 часов 31 минуту
Программа 100% работает, проверьял. Прошу помощи в переводе на С++
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
program dd;
Uses crt, Graph;
Const N=10; M=10; jj=1;
Var i,j,k,l,u, Gd, Gm : integer; p: real; h,E,EE,dE,x,a,fi,fi1,fi2 : real;
s : array [1..N,1..M] of real; Label metka;
Procedure Energy;
Var i,j : integer;
begin E:=0; dE:=0;
For i:=2 to N-1 do For j:=2 to M-1 do begin
E:=E-jj*(s[i,j]*s[i+1,j]+s[i,j]*s[i-1,j]+s[i,j]*s[i,j+1]+s[i,j]*s[i,j-1]
+0.7*(s[i,j]*s[i+1,j+1]+s[i,j]*s[i-1,j-1]+s[i,j]*s[i-1,j+1]+s[i,j]*s[i+1,j-1]));
end;
for i:=2 to N-1 do For j:=2 to M-1 do begin
h:=0; If (i>0.6*N)and(j>0.6*M) then h:=-0.05;
If (i<0.4*N)and(j<0.4*M) then h:=0.05;
dE:=dE-h*s[i,j]; end; E:=E+dE;
end;
Procedure Draw;
Var i,j : integer;
begin For i:=1 to N do begin
For j:=1 to M do begin If s[i,j]=1 then begin
Circle(15*i,15*j,5); circle(15*i,15*j,6); circle(15*i,15*j,7); end;
If s[i,j]=0 then circle(15*i,15*j,5); end; end; end;
begin
Randomize; for i:=1 to N do for j:=1 to M do
begin p:=Random(100)/100; s[i,j]:=0;
If p<0.33 then s[i,j]:=-1; If p>0.66 then s[i,j]:=1;
end; Draw;
Repeat For k:=1 to round(N*M/10) do begin Energy; EE:=E;
i:=1+round(random(N-2)); j:=1+round(random(M-2));
If s[i,j]=1 then begin u:=1; s[i,j]:=0; goto metka; end;
If s[i,j]=-1 then begin u:=-1; s[i,j]:=0; goto metka; end;
If (s[i,j]=0)and(random(100)>50) then s[i,j]:=-1 else s[i,j]:=1;
u:=0; metka: Energy; If (E>EE) then s[i,j]:=u;
end;
Energy; Draw; until keypressed;
Repeat until keypressed ;
END.
 
Текущее время: 16:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru