Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 20.09.2013
Сообщений: 16

Почему выполняется после 12 итераций?

14.12.2013, 20:42. Показов 703. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание:


Вычисляю каждое значение синуса(х) по формуле ряда (с помощью Repeat), всего выполняться программа должна 12 раз (цикл for), так как шаг=0.1. Но программа выполняется больше, чем 12 раз. Вопрос: что не так?

Заранее спасибо!


Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Program LAB7;
Var x1, x2, x, H, EPS, S, y, fact, formula: real; i, k: integer; factP: double;
begin
Writeln;
 
Write('Vvedite x1: '); Readln(x1);
Write('Vvedite x2: '); Readln(x2);
Write('Vvedite H: '); Readln(H);
Write('Vvedite EPS: '); Readln(EPS);
 
if x=0 then  begin
   Write ('x=  0');  Write('  ');
   Write('   Znachenie po formule ryada=0'); Write('  ');
   Write('        Formula sin(x)=  0');  Writeln('  ');
  end;
 
x:=0;
 
for i:=1 to 12 do begin
 
 k:=0;   x:=x+0.1;  s:=0;
 
 Repeat
  k:=k+1;
 
  factP:=1;
  for i:= 1 to 2*K-1 do
  factP:= factP*i;
 
 
 
  if k mod 2 = 0 then y:=-exp((2*k-1)*ln(x))/factP
                   else y:=exp((2*k-1)*ln(x))/factP;
 
  s:=s+y;
  Until abs(y)<EPS;
 
  formula:=sin(x);
  Write ('x= ', x:5:2);  Write('  ');
  Write('Znachenie po formule ryada= ', s:9:5); Write('  ');
  Write('Formula sin(x)= ', formula:9:7);  Writeln('  ');
 
 
 
  end;
 
End.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.12.2013, 20:42
Ответы с готовыми решениями:

Почему в цикле While выполняется больше итераций чем надо?
Всем привет. Имеется задача , Я набросал код. Но проблема в том, что тело цикла while выполняется больше чем надо на 1. Как это можно...

Почему код после await-а зачастую выполняется не в том же потоке?
Привет! Вопрос именно в контексте ASP.NET MVC. Если такой код в контроллере: private Task Delay(int seconds) { return...

Почему запрос выполняется гораздо быстрее после ребилда индекса?
Доброго времени суток! Пожалуйста помогите ответить вот на какой вопрос - в БД запрос (брал данные из 2 таблиц с большим числом данных)...

4
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
14.12.2013, 20:59
потому что ограничения циклов у вас написаны безграмотно
0
0 / 0 / 0
Регистрация: 20.09.2013
Сообщений: 16
14.12.2013, 21:03  [ТС]
Цитата Сообщение от кот Бегемот Посмотреть сообщение
Потому что внутри цикла for у вас другой цикл, в котором вычисляется значение пока не станет меньше eps, а оно может стать и не за 12 операций.
Цикл Repeat может выполняться сколько угодно раз, пока значение не будет меньше EPS.
Но цикл for должен выполняться ровно 12 раз, но не больше.
А он у меня выполняется почему-то больше

Добавлено через 2 минуты
Цитата Сообщение от кот Бегемот Посмотреть сообщение
потому что ограничения циклов у вас написаны безграмотно
Да вроде бы всё так.
Для for начинается с begin, заканчивается end;
для Repeat (начало), закачивается Until.
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
14.12.2013, 21:07
Pascal
1
2
for i:= 1 to 2*K-1 do
  factP:= factP*i;
Смени здесь счетчик с i на например j

Добавлено через 52 секунды
А то
for i:=1 to....
for i:=1 to ...
0
0 / 0 / 0
Регистрация: 20.09.2013
Сообщений: 16
14.12.2013, 21:09  [ТС]
Цитата Сообщение от Puporev Посмотреть сообщение
Смени здесь счетчик с i на например j
Спасибо, теперь всё работает как надо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.12.2013, 21:09
Помогаю со студенческими работами здесь

В PyQt5 QML QtQuick почему не выполняется код после вызова слота?
onClicked: { // Вызываем слот калькулятора, чтобы вычесть числа calculator.sub(firstNumber.text, secondNumber.text) ...

Не выполняется нужное количество итераций цикла
Добрый день ребята!!!! Помогите найти ошибку!!! //--------------------------------------------------------------------------- ...

Почему не получается метод итераций
Почему в конечном ответе ничего не выходит, а в примере вышло?) Метод итераций

Решение методом простых итераций, методов итераций и хорд, методом итераций и касательных
Здравствуйте.Подскажите пожалуйста,как написать программы для решения методом простых иттераций, методов иттераций и хорд,методом иттераций...

Почему не выполняется условие?
Код в прикрепляемых скриншотах. Также там указаны значения, которые, кстати, идентичны. Так почему же условие не выполняется. И ещё...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru