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

Программа с постусловием не правильно считает результат

10.05.2016, 21:44. Показов 1331. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Согласно задания:
Разработать алгоритм и программу, имеющих структуру цикла с постусловием и осуществляющих табулирование заданной функции при изменении аргумента x от начального значения x0 с постоянным шагом hx , т.е. x = x0 (hx) xn.
Дана сложная функция f(x):

f(x)=
2sin^2(Pi/4 – x/2), если - Pi/2<=x<= - Pi/4
(1-cos2x)/sin2x, если - Pi/4<x< - Pi/8
x/(2+cosx), если - Pi/8<=x<= 0

При других значениях x функция f(x) не определена.

написал программу. Но почему-то при значениях x0=-1.5, шаге hx=0.5 и конечном значении xn=0
программа считает постоянно по первой формуле.
Подскажите пожалуйста что не так.
Огромное спасибо.

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
{************************************************}
{Программа: Tab, лаб.раб. №5, вар.15             }
{Цель:табулирование функции y=f(x) с помощью     }
{     оператора цикла с постусловием.            }
{Описание параметров и переменных:               }
{x - аргумент функции;                           }
{x0,xn - начальное и конечное значения аргумента;}
{hx - шаг изменения аргумента;                   }
{y - значение функции.                           }
{Требуемые подпрограммы: нет.                    }
{Программист: **********                        }
{Дата написания: 07 иая 2016 г.                  }
{************************************************}
Program Tab;
  Var
     hx,x,x0,xn,y:Real;
  Begin {Tab}
     {Ввод и эхо-печать исходных данных}
     Writeln('ВНИМАНИЕ! При x<-Pi/2(-1.5707) и x>0 функция f(x) не определена');
     Write('x0=');
     Read (x0);
     Write('hx=');
     Read (hx);
     Write('xn=');
     Read (xn);
     Writeln('X0=',x0,' HX=',hx,' XN=',xn);
     {Табулирование функции}
     x:=x0;
     repeat {начало цикла}
     if(x<-Pi/2) or (x>0) then
       Writeln('При x=',x:6:4,' функция f(x) не определена')
       else
         begin
          if (x>=-Pi/2) or (x<=-Pi/4) then y:=2*sqr(sin(Pi/4-x/2))
            else if (x>-Pi/4) or (x<-Pi/8) then y:=(1-cos(2*x))/sin(2*x)
              else if (x>=-Pi/8) or (x<=0) then y:=x/(2+cos(x));
          Writeln('X=',x,' Y=',y);{эхо-печать}
         end;
       x:=x+hx
     until x>xn+hx/2 {конец цикла}
End.{Tab}
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.05.2016, 21:44
Ответы с готовыми решениями:

Пояснить, как программа считает результат
как программа считает результат? var n, m, i, d, s : integer; input, output: text; begin Assign(input,'input.txt'); ...

Почему программа не правильно считает корни квадратного уравнения ?
Program f1 ; var x1,x2,a,b,c: real ; procedure f(a,b,c:real ; var y1,y2:real ) ; var d: real ; begin d:=b*b-4*a*c ; ...

Программа не правильно считает результат
Вот условие задачи: http://floomby.ru/s2/U4pWUV Вот код: #include &lt;iostream&gt; using namespace std; int main() { int left,...

5
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7816 / 4635 / 2837
Регистрация: 22.11.2013
Сообщений: 13,158
Записей в блоге: 1
11.05.2016, 11:22
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
34
if (x>=-Pi/2) and (x<=-Pi/4) then
аналогично и далее перепутаны "and" и "or".

Но разумнее:
Pascal
1
2
3
4
5
  Write('X=',x,' Y=');
  if (x<Pi/2) or (x>0) then WriteLn('не определено')
  else if x<=-Pi/4 then WriteLn(2*Sqr(Sin(Pi/4-x/2)))
  else if x<=-Pi/8 then WriteLn((1-Cos(2*x))/Sin(2*x))
  else  { x<=0 }        WriteLn(x/(2+Cos(x)));
1
0 / 0 / 0
Регистрация: 29.12.2015
Сообщений: 24
11.05.2016, 13:17  [ТС]
Огромное спасибо!
0
0 / 0 / 0
Регистрация: 29.12.2015
Сообщений: 24
11.05.2016, 13:44  [ТС]
Подскажите еще пожалуйста, такой алгоритм под эту программу будет соответствовать?
Миниатюры
Программа с постусловием не правильно считает результат  
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7816 / 4635 / 2837
Регистрация: 22.11.2013
Сообщений: 13,158
Записей в блоге: 1
11.05.2016, 14:46
1) ввод "x0, hx, xn"
2) условие выхода из цикла "x > xn+hx/2"
3) блоки вывода косые (параллелограммы)
4) присваивания "y:=" нет, выводится значение выражения непосредственно

Как оформляется фрагмент алгоритма подсказать, увы, не смогу, вероятно, там не просто прямоугольный блок должен быть.
1
0 / 0 / 0
Регистрация: 29.12.2015
Сообщений: 24
11.05.2016, 14:58  [ТС]
Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.05.2016, 14:58
Помогаю со студенческими работами здесь

Не выводит результат(. Считает все правильно проверял в консоле
//--------------------------------------------------------------------------- #include &lt;vcl.h&gt; #pragma hdrstop #include...

Программа неверно считает результат
Здравствуйте! В общем, нужно было составить тест на любую тему. Я всё сделал, но программа почему-то неверно выводит результат. Если...

Программа, переведенная с Паскаля, неправильно считает результат
Помогите найти ошубки, а то в паскале написала, всё считало правильно, перенесла на лазарус, считать стало неправильно. const n=10000;...

Программа считает значения элементов массива но результат на 2 больше
Программа считает значения элементов массива но результат на 2 больше, в чём проблема? #include &lt;stdio.h&gt; #include...

Не правильно считает программа
Чем больше ввожу столетие, тем меньше пятниц 13 получается. #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru