Вычитание в троичной системе счисления (Delphi Console Application) Даны два числа в троичной системе счисления (не больше чем 40 знаков) нужно отнять от первого числа второе и перевести ответ в десятичную. Помогите пожалуйста, я не знаю как это осуществить в консольном приложении в Delphi.
Короче,так как в болталке одни хацкеры и математики,то помогаю. Code: // троичное вычитание program Project2; {$APPTYPE CONSOLE} uses sysutils; function in_extent(a,b:extended):extended; begin result:=exp(b*ln(a)); end; function Three_to_dec(s:string;q:word):extended; var param,i:integer; m,n:extended; begin m:=0; for i:=1 to length(s) do begin val(s[i],n,param); if param<>0 then n:=10+ord(upcase(s[i]))-ord('A'); m:=m+in_extent(q,length(s)-i)*n; end; Three_to_dec:=m; end; function is_three(a:extended):integer; var i:integer; c:set of char; s:string; begin c:=['0'..'2']; s:=floattostr(a); for i:=1 to length(s) do if not(s[i] in c) then result:=1; if result=1 then writeln('error'); end; procedure calculate; var a,b,c,d,e,f,g:extended; begin writeln('vvedite #1'); readln(a); b:=is_three(a); if b=1 then exit; c:=three_to_dec(floattostr(a),3); writeln('vvedite #2'); readln(d); e:=is_three(d); if e=1 then exit; f:=three_to_dec(floattostr(d),3); g:=abs(c-f); writeln('raznost =',g:4:2); end; begin calculate; readln; end. вычитает из 1-го числа второе,по модулю.Таблицу чисел троичной системы можешь посмотреть на вики,за одно протестируешь программу.