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

Переписать с Паскаля на С++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Оптимизирует ли компилятор код при использовании функции, возвращающей константу? http://www.cyberforum.ru/cpp-beginners/thread948767.html
Объясните мне компиляторы С++ оптимизируют такой код?. Да и вообще компиляторы оптимизуруют это? Я просто думал, что сохраняется адрес памяти, а оттуда цикл вытаскивает то, что там по адресу лежит, т.е. я мыслил так: "в примере на адрес кладется адрес функции, значит в конце каждой итерации эта функция будет выполняться. " int myfunc() { return 99; }
C++ Поиск наименьшего расстояния от одного элемента массиа до остальных Дан неотсортированный массив чисел (но это не беда, отсортируем...) тогда получится отсортированный по возрастанию массив чисел)) В нём могут быть поворяющиеся элементы... Нужно найти такое значение элемента массива, из которого все расстояния до остальных элементов будет минимальным (вот это уже проблема(( ). Расстояние от одного элемента массива A до другого будет находиться по формуле:... http://www.cyberforum.ru/cpp-beginners/thread948740.html
Опять указатели C++
Здравствуйте. Изучаю эти туториалы: http://www.rastertek.com/dx11tut03.html В конце есть упражнение: конфигурацию видеокарты вывести в текстовой документ. Есть файл: d3dclass.cpp, ну и d3dclass.h соответственно. Там (в d3dclass.cpp) есть метод: void D3DClass::GetVideoCardInfo(char* cardName, int& memory) { strcpy_s(cardName, 128, m_videoCardDescription); memory = m_videoCardMemory; return;...
C++ Чистка памяти
Имеет ли смысл в функции main() делать в конце очистку от экземпляра созданного класса delete имя_экземпляра_класса, или это сделает деструктор класса? Под экземпляр класса память в начале main() выделялась.
C++ как задать текст длинной не больше 100 символов заканчивающийся точкой? http://www.cyberforum.ru/cpp-beginners/thread948704.html
код пожалуйста))
C++ Работа с файлами (.txt) В файле находятся только целые числа. Определить, имеет ли последовательность чисел, находящихся в файле, нечетную длину, и если да, то переменной m присвоить значение среднего элемента файла. В противном случае присвоить этой переменной значение первого числа файла. подробнее

Показать сообщение отдельно
lowrayder92
0 / 0 / 0
Регистрация: 04.09.2013
Сообщений: 13
05.09.2013, 14:55     Переписать с Паскаля на С++
Ребят, можете переписать с Паскаля на С++

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
program PROGRAMMA7;
uses crt, graph;
const n=100; m=100; h=1; dt=0.2;
var  ii,jj,kk,i,j,DriverVar, ModeVar, ErrorCode : integer;
t: array[1..N, 1..M] of real; 
q,a,b,bb :real; naprav,uslovie: boolean;
 
procedure Init; {---- Инициализация графики ----}
begin DriverVar:=Detect; 
      InitGraph(DriverVar,ModeVar,'c:\bp\bgi');
      ErrorCode:=GraphResult;   
      if ErrorCode <> grOK then Halt(1); end;
 
procedure Param_sred; {---Коэффициент температуропроводности---}
begin if j<70 then a:=2 else a:=1; end;
 
procedure Istoch;     {--- Источники тепла ---}
begin if ((i>45)and(i<55))and((j>70)and(j<75)) 
                                 then q:=50 else q:=0; end;
 
procedure Nach_uslov; {-- Начальное распределение температуры --}
begin  For i:=1 to N do For j:=1 to M do
  begin  uslovie:=((j<65)and(j>45)and(i>20)and(i<30))
                or((j<45)and(j>35)and(i>50)and(i<60));
  if uslovie=true then t[i,j]:=450 else t[i,j]:=1;  end; 
end;
 
procedure Raschet; {---- Расчет температуры ----}
begin Istoch; Param_sred;
    t[i,j]:=t[i,j]+a*(t[i,j+1]-2*t[i,j]+t[i,j-1])*dt/(h*h)+q;
   if naprav=true then t[i,j]:=
         t[i,j]+a*(t[i+1,j]-2*t[i,j]+t[i-1,j])*dt/(h*h); 
end;
 
procedure Draw;{---- Вывод на экран ----}
begin if t[i,j]>50 then setcolor(2); 
    if t[i,j]>300 then setcolor(12);
    if (t[i,j]<300)and(t[i,j]>120) then setcolor(10);
    if (t[i,j]<120)and(t[i,j]>70) then setcolor(3);
    if (t[i,j]<70)and(t[i,j]>30) then setcolor(4);
    if (t[i,j]<30)and(t[i,j]>20) then setcolor(5);
    if (t[i,j]<20)and(t[i,j]>10) then setcolor(7);
    if t[i,j]<10 then setcolor(15); 
    rectangle(i*5+50,j*5,i*5+54,j*5+4);   
end;              
 
BEGIN             {---- Основная программа ----}
Init; Nach_uslov;
Repeat kk:=kk+1;
For i:=2 to N-1 do 
   For j:=2 to M-1 do begin naprav:=false; Raschet; end;
For j:=2 to M-1 do 
   For i:=2 to N-1 do begin naprav:= true; Raschet; end;
For i:=2 to N-1 do For jj:=2 to M-1 do  
      begin j:=M+1-jj; naprav:=true; Raschet; end;
For j:=2 to M-1 do For ii:=2 to N-1 do
     begin i:=N+1-ii; naprav:=false; Raschet; end;
if kk/2=round(kk/2) then 
   For i:=2 to N-1 do For j:=2 to M-1 do Draw;
until KeyPressed; CloseGraph;
END.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 19:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru