Поиск по этому блогу

понедельник, 9 октября 2017 г.

Число E

(Время: 1 сек. Память: 16 Мб Сложность: 10%)
Выведите в выходной файл округленное до n знаков после десятичной точки число E. В данной задаче будем считать, что число Е в точности равно 2.7182818284590452353602875.
Входные данные
Входной файл INPUT.TXT содержит целое число n (0 ≤ n ≤ 25).
Выходные данные
В выходной файл OUTPUT.TXT выведите ответ на задачу.
Пример
INPUT.TXT
OUTPUT.TXT
1
0
3
2
25
2.7182818284590452353602875
3
13
2.7182818284590
Решение 

var  d,r,n,t,m:integer;
      p,s:string;     
     f,f1:text;
  begin
  s:='2.71828182845904523536028750';
    assign(f,'input.txt');
    reset(f);
    read(f,d);
    close(f);
    if d=0 then s:='3' else begin
    r:=d+2;
    p:=s[r+1];
    val(p,n,t);
    val(s[r],m,t);
    if n>=5 then m:=m+1;
    str(m,p);
    s:=copy(s,1,r-1)+p;
    end;
    assign(f1,'output.txt');
     rewrite(f1);
     write(f1,s);
   close(f1);

  end.

Комментариев нет:

Отправить комментарий