Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.06.2020, 13:34   #1
Nento
Новичок
Джуниор
 
Регистрация: 07.06.2020
Сообщений: 4
Сообщение Составить программу вычисления значения функции

Нужно решить через цикл For (На паскале)
Изображения
Тип файла: jpg RKqtIpzcvsQ.jpg (7.0 Кб, 20 просмотров)

Последний раз редактировалось Nento; 07.06.2020 в 13:48.
Nento вне форума Ответить с цитированием
Старый 07.06.2020, 15:08   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,562
По умолчанию

Не вижу признаков самостоятельной работы. Халява - во Фриланс.
Или вот Неверов подтянется, он любит помогать двоечникам.
digitalis вне форума Ответить с цитированием
Старый 07.06.2020, 15:08   #3
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Nento, есть типовые примеры:
Примеры решения задач на языке Turbo Pascal + численные методы
Типичные задачи и примеры. Теория.

Смотрели?
I am not a wizard, I am just learning.
Desc вне форума Ответить с цитированием
Старый 07.06.2020, 15:27   #4
Nento
Новичок
Джуниор
 
Регистрация: 07.06.2020
Сообщений: 4
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Не вижу признаков самостоятельной работы. Халява - во Фриланс.
Или вот Неверов подтянется, он любит помогать двоечникам.
digitalis, я могу написать то , что под знаком П , но именно с самим произведением ряда ни разу не сталкивался и не могу найти что-либо подходящее. (я его даже в школе не проходил и не имею представления , как он работает , а тем более как перенести его на паскаль. И спасибо , конечно, огромное , что впервые , пытаясь задать вопрос на подобном сайте и попросив помощи , получил я лишь клеймо двоечника.
Nento вне форума Ответить с цитированием
Старый 07.06.2020, 15:38   #5
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Цитата:
Сообщение от Nento Посмотреть сообщение
получил я лишь клеймо двоечника.
Чтобы таковым не быть, рекомендую как начальный опорный материал:
Паскаль Программирование на языке высокого уровня, 2-е издание, Павловская, 2010
или
Паскаль Программирование на языке высокого уровня, Т. А. Павловская, 2007

P. S.
Это относительно языка.
Ну и соответственно знания по "вышке" подтянуть необходимо, судя по всему.
I am not a wizard, I am just learning.

Последний раз редактировалось Desc; 07.06.2020 в 15:41. Причина: Добавил P. S.
Desc вне форума Ответить с цитированием
Старый 07.06.2020, 15:58   #6
Nento
Новичок
Джуниор
 
Регистрация: 07.06.2020
Сообщений: 4
По умолчанию

Desc, да какая мне вышка я только школу оканчиваю) меня друг попросил помочь с заданиями по паскалю , а это единственное , которое я не смог сделать в виду отсутствия соответсвующих знаний. Полагал , что спросив на форуме , мне хоть как-то помогут с решением конкретного примера , но видно не судьба (:
Nento вне форума Ответить с цитированием
Старый 07.06.2020, 16:35   #7
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,562
По умолчанию

"Помогут" - это "сделают за меня"? Тут всегда помогают, если видят, что участник приложил хоть какие-то минимальные усилия, разъяснят непонятное. "Я вот так делал, но вот в этом месте затык" .
А тут что непонятного? Что такое циклы - знаешь? Корень 4-й степени берётся через логарифм.
Надо сделать функцию.
Код:
function root4 (arg: double):  double; 
begin
   root4 := Exp(ln(arg)/4) 
end ;
Или взять два раза корень Sqrt(Sqrt(x))
Вообще-то задачка по информатике для 6-го класса.
Но сам оптимистический подход мне нравится: я в этом не шарю, но товарищу помогу
Ну тогда помогём вместе
Код:
var x,y,tmp,x2: double ; i : integer ;
begin
  x := -2 ;
  y := 1;
  x2 := x*x ;
  for i := 0 to 4 do
      begin
          tmp := i/(1+i*i) + x2 ;
          y := y * Sqrt(Sqtr(tmp))
       end ;
Ну и то же проделать с остальными 2 значениями х. Можно(нужно) выделить вычисление y в функцию. Можно обвернуть это ещё одним циклом и в нём передавать разные значения аргументов.
Цитата:
Не так страшен чёрт, как у семи нянек дитя без глазу. ©
ПыСы А "двоечник" в данном случае - это не клеймо, а точное определение уровня компетентности в данном конкретном предмете в данное время.
PPS А ряда-то тут никакого и нет - просто вычисляется произведение заранее заданного числа элементов. https://ru.wikipedia.org/wiki/Ряд_(математика)

Последний раз редактировалось digitalis; 07.06.2020 в 17:07.
digitalis вне форума Ответить с цитированием
Старый 07.06.2020, 17:20   #8
Nento
Новичок
Джуниор
 
Регистрация: 07.06.2020
Сообщений: 4
По умолчанию

digitalis, Cпасибо , в общем как-то так получилось
Код:
var 
  x,y,tmp: double ; 
  r ,i: integer ;
begin
  
  y := 1;
  
  for i:=1 to 3 do
    
    begin
    
    readln (x);
  
    for r := 0 to 4 do
    
        begin
      
        tmp := r/(1+r*r) + x*x ;
        
        y := y * Sqrt(Sqrt(tmp));
        
        end ;
        
     writeln (y);
     
     end;
    
end.

Последний раз редактировалось BDA; 07.06.2020 в 18:59.
Nento вне форума Ответить с цитированием
Старый 08.06.2020, 06:57   #9
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,562
По умолчанию

Ну вот, а то боялся. Но мою последнюю правку не учёл. Чтобы каждый раз в цикле не вычислять x*x, можно это сделать до цикла. Это - стандартный приём оптимизации по скорости выполнения. Конечно, в данном примере об скорости речи нет, но в реальной жизни для циклов, повторяемых тысячекратно, эффект заметен. Впрочем, умный компилятор сам может это оптимизнуть.
---------------------------------------
Ээээ, неправильно. "Чистку единицей " y := 1; нужно проводить каждый раз перед началом внутреннего цикла, иначе лажа.
Код:
 
  for i:=1 to 3 do    
    begin    
       readln (x);
       y := 1;    
       for r := 0 to 4 do

Последний раз редактировалось digitalis; 08.06.2020 в 07:03.
digitalis вне форума Ответить с цитированием
Старый 09.06.2020, 09:36   #10
Petros-20
Пользователь
 
Регистрация: 14.03.2020
Сообщений: 45
По умолчанию

Код:
f=1;
for r:=4 downto 0 do f=f*Sqrt(Sqrt(r/(1+r*r)+x*x));

Последний раз редактировалось Petros-20; 09.06.2020 в 13:58.
Petros-20 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Составить программу вычисления значения функции FellTon Помощь студентам 2 15.11.2019 20:11
Составить программу для вычисления значения функции: Sonya_Mayorova Помощь студентам 2 08.06.2017 17:45
Составить программу для вычисления значения функции Alecksandra12 Общие вопросы C/C++ 1 03.11.2015 14:28
Составить программу вычисления значения функции. ПАНЦУЛАЯ Помощь студентам 8 30.03.2013 11:55
Составить программу для вычисления значения функции. марина9999 Помощь студентам 0 12.11.2012 20:01