Форум программистов, компьютерный форум, киберфорум
Наши страницы
PascalABC.NET
Войти
Регистрация
Восстановить пароль
 
Unr_eal
0 / 0 / 0
Регистрация: 12.09.2019
Сообщений: 1
1

Help найти ошибку в коде

12.09.2019, 14:14. Просмотров 232. Ответов 4
Метки нет (Все метки)

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Var 
s,sgn: real; 
 eps: decimal; 
 i: integer; 
begin 
 write('точность вычислений: '); 
 readln(eps); 
 s:=1; sgn:= -1; 
 i:=3; 
 repeat 
 s:=s+sgn/ i; 
 sgn:= - sgn; 
 i:=i+2; 
 until 8/i<eps; 
 writeln('число пи: ',s*4); 
 writeln('точное значение пи: ',pi); 
end.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.09.2019, 14:14
Ответы с готовыми решениями:

Двумерный массив. Поиск нулей.Не могу найти ошибку ошибку в коде
Вот,например массив 5 5 0 1 0 1 0 1 1 1 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 считываются два...

Найти ошибку в коде
program tab4; uses crt; const NN=3;MM=5; type Matrix=array of real; Tvector=array of real;...

Найти ошибку в коде
Нужно написать код, в котором вводилось бы значение N и дальше n строк в каждой строке элементов...

Найти ошибку в коде
Нужно что-бы в введёной послдовательности чисел считалось Сумма, минимальное значение, и кол-во...

Найти ошибку в коде
program rim; uses crt, GraphABC; var x, y: integer; label start; begin

4
Puporev
Модератор
57523 / 43860 / 30299
Регистрация: 18.05.2008
Сообщений: 104,735
12.09.2019, 14:32 2
Pascal
1
eps:real;
1
Sun Serega
674 / 452 / 225
Регистрация: 07.04.2017
Сообщений: 1,951
12.09.2019, 18:49 3
eps не просто так объявлено как real. Точность обычно указывается в десятичном виде и decimal позволяет не терять информацию.

Надо заменить readln(eps); на eps := decimal.Parse(ReadlnString);
1
mr-Crocodile
167 / 124 / 45
Регистрация: 19.03.2019
Сообщений: 399
13.09.2019, 18:06 4
Цитата Сообщение от Sun Serega Посмотреть сообщение
eps не просто так объявлено как real.
Вы опечатались, Вы хотели сказать
eps не просто так объявлено как Decimal
0
Сергей Игнатьев
165 / 26 / 16
Регистрация: 13.03.2017
Сообщений: 140
15.09.2019, 08:29 5
Unr_eal,
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 //В результате: при eps=0.000001 получается 7 верных значащих цифр, 
//далее сходится очень медленно  
//смысла применять decimal нет! (real быстрее, но тоже до eps=1E-8)
 
var eps,i,s,sgn:decimal;
//var eps,i,s,sgn:real;
begin 
 write(' точность вычислений: ');  
 eps := decimal.Parse(ReadlnString);
 //readln(eps);
 s:=1;
 sgn:= -1;
 i:=3; 
 repeat 
 s:=s+sgn/i; 
 sgn:= 0- sgn; 
 i:=i+2; 
 until eps>8/i;
 writeln(' число пи: ',s*4); 
 writeln(' точное значение пи: ',pi); 
end.
0
15.09.2019, 08:29
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.09.2019, 08:29

Найти ошибку в коде
Добрый день. Будьте добры, проверьте пожалуйста код, у меня выдаёт ошибку. Помогите исправить...

Найти ошибку в коде
procedure form_menu; var i:byte; sizeof:integer; begin ramka(x,y,Size Of...

Найти ошибку в коде
procedure OnButton1Click; begin var sound: system.Media.SoundPlayer; sound:= new...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.