0 / 0 / 0
Регистрация: 01.12.2014
Сообщений: 3
1

Перевод программы из Pascal в C++

01.12.2014, 22:22. Показов 1595. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!

Помогите перевести готовую программу сделанную на Pascal'e в С++.
Знания Паскаля нулевые, знания С++ - скромные, желание вникнуть в код и понять принцип его работы сильное.

Постановка задачи:

Кликните здесь для просмотра всего текста
Задача об инфекции стригущего лишая (Ван Тассел Д. Стиль, разработка, эффективность, отладка и испытание программ. М.: Мир, 1981.)
Промоделируйте процесс распространения инфекции стригущего лишая по участку кожи размером n * n (n — нечетное) клеток. Предполагается, что исходной зараженной клеткой кожи является центральная. В каждый интервал времени пораженная инфекцией клетка может с вероятностью 0,5 заразить любую из соседних здоровых клеток. По прошествии шести единиц времени зараженная клетка становится невосприимчивой к инфекции, возникший иммунитет действует в течение последующих четырех единиц времени, а затем клетка оказывается здоровой. В ходе моделирования описанного процесса выдавать текущее состояние моделируемого участка кожи в каждом интервале времени, отмечая зараженные, невосприимчивые к инфекции и здоровые клетки.


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
uses
  CRT;
 
const
  n= 21;        {размер области}
  Cont= 50;     {заразность в процентах}
  Ill= 6;       {время болезни}
  Imm= 4;       {длительность иммунитета}
 
var
  a,b: array[1..n,1..n]of integer;
  i,j: integer;
  c: char;
 
 
procedure Show;
begin
  for i:=1 to n do begin
    for j:=1 to n do
      if (a[i,j]>0) then Write(' #') else if a[i,j]<0 then Write(' +') else Write('  ');
    WriteLn
  end
end;
 
 
begin
  FillChar(a,SizeOf(a),0);
  a[n div 2+1,n div 2+1]:=1;
  Show;
  Randomize;
  repeat
    b:=a;
    for i:=1 to n do begin
      for j:=1 to n do begin
        if a[i,j]>0 then begin
          if (i>1) and (b[i-1,j]=0) and (Random(100)<Cont) then b[i-1,j]:=1;
          if (j>1) and (b[i,j-1]=0) and (Random(100)<Cont) then b[i,j-1]:=1;
          if (i<n) and (b[i+1,j]=0) and (Random(100)<Cont) then b[i+1,j]:=1;
          if (j<n) and (b[i,j+1]=0) and (Random(100)<Cont) then b[i,j+1]:=1;
          Inc(b[i,j]);
          if b[i,j]>Ill then b[i,j]:=-Imm
        end
        else if a[i,j]<0 then Inc(b[i,j])
      end
    end;
    a:=b;
    Show;
    WriteLn;
    c:=ReadKey
  until c=#27
end.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.12.2014, 22:22
Ответы с готовыми решениями:

Перевод программы с Pascal на C++
Здравствуйте уважаемые форумчане, помогите перевести следующую программу на C++: program z3; ...

Перевод программы из Pascal на С++
Прошу людей которые знают Pascal и С++ перевести программу из Паскаля на С++. uses crt; const...

Перевод программы с Pascal на С++
uses crt; var i :integer; BEGIN ClrScr; Write('Результат: '); for i := 20 to 50 do if (i...

Перевод программы с Pascal в С++
Добрый день,мне нужно написать правильный код программы с Pascal на С++ var n,k:longint; begin...

1
случайный прохожий
2920 / 1937 / 606
Регистрация: 20.07.2013
Сообщений: 5,133
04.12.2014, 03:51 2
Лучший ответ Сообщение было отмечено начинаю как решение

Решение

Распространение инфекции (но только Builder).
1
04.12.2014, 03:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.12.2014, 03:51
Помогаю со студенческими работами здесь

Перевод программы из Pascal на C++
program vlad; uses crt; var m:integer; a:real; begin clrscr; write('a: '); ...

Перевод программы Pascal -> C++
Помогите на Си++ перевести program a1; uses crt; var s,tmp:string; i,x:longint; ...

Перевод программы с Pascal на С++
Нужно перевести программу с языка Pascal на язык С++. Буду благодарен за помощь :) var text:...

Перевод программы из Pascal в C++
Добрый вечер, нужна помощь! Буду благодарен. Сама задача звучит так : Найти значение выражения...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru