Ошибка "Несколько подпрограмм могут быть вызваны". Pascal ABC.net.
begin
var d:=ReadlnString(Вас приветствует программа, которая может делить +
два числа с остатком. Напишите, пожалуйста, свое имя);
Writeln(Здравствуйте, ,d,!);
repeat
Writeln(Как нужно написать ответ?,#13#10,
1 вариант. 5: 3 = 1(ост.2),#13#10,2 вариант. 5 = 3*1 + 2,#13#10,
0 - завершить работу);
var c:char;
Repeat
c:=ReadlnChar(Введите 0, 1 или 2:);
case c of
0: exit;
1,2:break;
end;
until False;
var a,b:BigInteger;
if not BigInteger.TryParse(ReadlnString(Введите целочисленное делимое:),a)
then begin
Writeln(Вы ввели неверное значение. Работа завершена);
Exit
end;
if not BigInteger.TryParse(ReadlnString(Введите целочисленный делитель:),b)
then begin
Writeln(Вы ввели неверное значение. Работа завершена);
Exit
end;
{if b=0 then begin
writeln(Вы ввели неверное значение.);
exit end;}
if c=1 then
WritelnFormat({0}:{1}={2}(ост.{3}),a,b,a div b,a mod b)
else
WritelnFormat({0}={1}*{2}+{3},a,b,a div b,a mod b);
var f:char;
Repeat
f:=ReadlnChar(Если вы хотите завершить работу, введите "0", если продолжить - любую букву.);
case f of
0: exit;
else break;
end;
until False;
until False
end.
//Pascal ABC.NET v3.0 сборка 1111
begin
var d:=ReadlnString(Вас приветствует программа, которая может делить +два числа с остатком. Напишите, пожалуйста, свое имя);
Writeln(Здравствуйте, ,d,!);
repeat
Writeln(Как нужно написать ответ?,#13#10,1 вариант. 5: 3 = 1(ост.2),#13#10,2 вариант. 5 = 3*1 + 2,#13#10,0 - завершить работу);
var c:char;
Repeat
c:=ReadlnChar(Введите 0, 1 или 2:);
case c of
0: exit;
1,2:break;
end;
until False;
var a,b:BigInteger;
if not BigInteger.TryParse(ReadlnString(Введите целочисленное делимое:),a) then
begin
Writeln(Вы ввели неверное значение. Работа завершена);
Exit
end;
if not BigInteger.TryParse(ReadlnString(Введите целочисленный делитель:),b) then
begin
Writeln(Вы ввели неверное значение. Работа завершена);
Exit
end;
if integer(b)=0 then
{приведение к типу Integer. Менее абстрактно, чем BigInteger}
begin
writeln(Вы ввели неверное значение.);
exit
end;
if c=1 then WritelnFormat({0}:{1}={2}(ост.{3}),a,b,a div b,a mod b)
else
WritelnFormat({0}={1}*{2}+{3},a,b,a div b,a mod b);
var f:char;
Repeat
f:=ReadlnChar(Если вы хотите завершить работу, введите "0", если продолжить - любую букву.);
case f of
0: exit;
else break;
end;
until False;
until False
end.
