Перевод с С++ в pascal
Формулировка задачи:
Помогите, пожалуйста, перевести код с С++ в pascal:
Или объясните что значит:
1) Vase[3];
2) cin >> Vase[i];
3) cout << setw(4) << Vase[i];
4) cout << endl;
5) !Vase[0]--
6) cout << "\nNumber: " << count << endl;
... и какими командами это можно заменить в паскале?
#include
#include
using namespace std;
int main()
{
int Vase[3];
for(int i = 0; i < 3; ++i)
cin >> Vase[i];
for(int i = 0; i < 3; ++i)
cout << setw(4) << Vase[i];
cout << endl;
int count = 0;
while(true)
{
if(!Vase[0]--) break;
++count;
if(!Vase[1]--) break;
++count;
if(!Vase[2]--) break;
++count;
if(!Vase[1]--) break;
++count;
}
cout << "\nNumber: " << count << endl;
return 0;
}Решение задачи: «Перевод с С++ в pascal»
textual
Листинг программы
var
Vase: array [0..2] of Integer;
count, i: Integer;
begin
for i := 0 to 2 do Read(Vase[i]);
for i := 0 to 2 do Write(Vase[i]:4); WriteLn;
count := 0;
repeat
Dec(Vase[0]); if Vase[0]+1<>0 then Break;
Inc(count);
Dec(Vase[1]); if Vase[1]+1<>0 then Break;
Inc(count);
Dec(Vase[2]); if Vase[2]+1<>0 then Break;
Inc(count);
Dec(Vase[1]); if Vase[1]+1<>0 then Break;
Inc(count);
until False;
WriteLn; WriteLn('Number: ',count);
end.
Объяснение кода листинга программы
- Объявляется массив
Vaseразмером 3 элемента типа Integer. - Объявляются переменные
countиiтипа Integer. - В цикле от 0 до 2 происходит считывание значений в массив
Vaseчерез команду Read. - В цикле от 0 до 2 значения из массива
Vaseвыводятся с помощью команды Write с выравниванием на 4 символа, после чего следует команда Writeln для перехода на новую строку. - Переменная
countинициализируется значением 0. - Запускается цикл с постусловием (repeat until False), в котором:
- Уменьшается значение элемента массива
Vaseс индексом 0. Если значение массива плюс 1 не равно 0, происходит выход из цикла. - Переменная
countувеличивается на 1. - Аналогичные шаги повторяются для элементов массива с индексами 1 и 2.
- Уменьшается значение элемента массива
- После завершения цикла выводится результат выполнения, в данном случае, количество увеличений переменной
countпри выполнении условий. - Программа завершается.