0 / 0 / 0
Регистрация: 13.02.2017
Сообщений: 75
1

Вычисление выражений с использованием функций

12.12.2017, 00:02. Показов 1333. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
При заданных значениях N с помощью собственных функций вычислить выражения.

Y = (2) + (4) * (6)
Цифры в скобках обозначают номер функции в последующей таблице.
Используемые функциина картинке)

при вычислении произведений (функции 1, 2, 3, 4, 5, 6, 11, 14, 15), начальные значения произведений равны единице.
Миниатюры
Вычисление выражений с использованием функций  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.12.2017, 00:02
Ответы с готовыми решениями:

Вычисление функции с использованием нестандартных функций и подпрограмм
Здравствуйте. Преподаватель дал задание, но не пойму, что он имел ввиду под A(i,j). Разъясните...

Вычисление выражений с использованием функций
При заданных значениях N с помощью собственных функций вычислить выражения. Y = ((13) + (14)) /...

Вычисление выражений с использованием функций
При заданных значениях N с помощью собственных функций вычислить выражения. Y= (5) - (6) / (7)...

Вычисление выражений с использованием функций
При заданных значениях N с помощью собственных функций вычислить выражения. Y=(1)*(2)/(3) Цифры в...

15
5084 / 2655 / 2350
Регистрация: 10.12.2014
Сообщений: 10,041
12.12.2017, 07:11 2
Pascal
1
2
3
4
5
6
7
function один(n : Integer) := Range(1,n).Aggregate(1.0,(p,x)->p*(1 + 1 / power(x, x)));
function два(n : Integer) := Range(1,n).Aggregate(1.0,(p,x)->p*power(1 + 1 / x, x));
function три(n : Integer) := Range(1,n).Aggregate(1.0,(p,x)->p*4*n/(n*2-1)/(n*2+1));
begin
  var n := ReadInteger;
  WriteLn('Y = ', один(n) + два(n) * три(n));
end.
0
0 / 0 / 0
Регистрация: 13.02.2017
Сообщений: 75
17.12.2017, 02:06  [ТС] 3
Можете полный код написать? Буду благодарен вам
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32928 / 21254 / 8160
Регистрация: 22.10.2011
Сообщений: 36,507
Записей в блоге: 8
17.12.2017, 11:33 4
Это и есть полный код. Что не так? Компилятор устаревший, не компилирует или опять нужно решение в стиле 80-ых, как на Турбо-Паскале?
0
0 / 0 / 0
Регистрация: 13.02.2017
Сообщений: 75
17.12.2017, 17:51  [ТС] 5
первую функцию только правильно вычисляет у меня
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32928 / 21254 / 8160
Регистрация: 22.10.2011
Сообщений: 36,507
Записей в блоге: 8
17.12.2017, 18:25 6
В чем это выражается?
0
Модератор
9950 / 5307 / 3326
Регистрация: 17.08.2012
Сообщений: 16,198
17.12.2017, 19:35 7
Во второй функции ошибка, должно быть
Pascal
2
function два(n : Integer) := Range(1,n).Aggregate(1.0,(p,x)->p*power(1 + 1 / x, n - x + 1));
наверное....

Добавлено через 2 минуты
Третья функция... Тоже вроде бы неверная... Подумаю.

Добавлено через 18 минут
Так, что ли...
Pascal
3
function три(n : Integer) := Range(1,n).Aggregate(1.0,(p,x)->p*(ord(not odd(x))*x+ord(odd(x))*(x+1))/(ord(not odd(x))*(x+1)+ord(odd(x))*x);
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32928 / 21254 / 8160
Регистрация: 22.10.2011
Сообщений: 36,507
Записей в блоге: 8
17.12.2017, 19:47 8
Третью можно вот так переписать:
Pascal
1
function три(n : Integer) := Range(2,n,2).Aggregate(1.0,(p,x)->p*sqr(x)/Pred(x)/Succ(x));
1
Модератор
9950 / 5307 / 3326
Регистрация: 17.08.2012
Сообщений: 16,198
17.12.2017, 19:55 9
Нет, лучше вот так:
Pascal
3
function три(n : Integer) := Range(1,n).Aggregate(1.0,(p,x)->p * (x + n div 2) / (x + (n + 1) div 2);
Добавлено через 1 минуту
volvo, опередил. Но у меня тоже вроде неплохой вариант

Добавлено через 3 минуты
Кгхм... volvo, неверно. Допустим, x=2, получится 4/1/3=4/3, а должно быть 2/3.

Добавлено через 2 минуты
а, нет, range...
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32928 / 21254 / 8160
Регистрация: 22.10.2011
Сообщений: 36,507
Записей в блоге: 8
17.12.2017, 19:55 10
2/1*2/3 = 4/3
0
Модератор
9950 / 5307 / 3326
Регистрация: 17.08.2012
Сообщений: 16,198
17.12.2017, 20:18 11
Стоп-стоп... А если n - нечётное? Допустим, n=1. Должно, по идее, получиться 2, ведь так? Что-то неверно.
0
0 / 0 / 0
Регистрация: 13.02.2017
Сообщений: 75
17.12.2017, 20:59  [ТС] 12
спасибо, вот сейчас все правильно работает.
0
0 / 0 / 0
Регистрация: 13.02.2017
Сообщений: 75
22.12.2017, 17:38  [ТС] 13
последнее выражение неправильно, попробовал написать 3 и ответ неправильно выходит
0
Модератор
9950 / 5307 / 3326
Регистрация: 17.08.2012
Сообщений: 16,198
22.12.2017, 19:06 14
А, ошибся... Вот так:
Pascal
3
function три(n : Integer) := Range(1,n).Aggregate(1.0,(p,x)->p * (x + x mod 2) / (x + succ(x) mod 2);
Для проверки: это произведение стремится к π/2.

Добавлено через 2 минуты
Правда, очень медленно стремится.
0
5084 / 2655 / 2350
Регистрация: 10.12.2014
Сообщений: 10,041
25.12.2017, 06:44 15
Со второй — да! Немного неправильно написал аргумент…

Ну а третью функцию я рассматривал как:
https://www.cyberforum.ru/cgi-bin/latex.cgi?(\frac{2}{1}*\frac{2}{3})*(\frac{4}{3}*\frac{4}{5})*...
Ибо не показана зависимость от n.
Вот у меня так получилось!
И, кто говорит, что она не верна, пусть докажет!
0
Модератор
9950 / 5307 / 3326
Регистрация: 17.08.2012
Сообщений: 16,198
25.12.2017, 23:18 16
JuriiMW, что доказывать? volvo эту функцию трактует так же, как Вы. Почему бы и нет? Другое дело, что действительно не известно, как её трактует составитель задачи. Естественно, если сомножителей взять в 2 раза больше (что имеет место у Вас), или получается "лишний" сомножитель при нечётном n (что имеет место у volvo), то и ответ будет несколько другим, который не сойдётся с дурацким "эталоном".
0
25.12.2017, 23:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.12.2017, 23:18
Помогаю со студенческими работами здесь

Вычисление выражений с использованием функций
При заданных значениях N с помощью собственных функций вычислить выражения. Y= (8) / (9) + (10)...

Организация ввода – вывода. вычисление выражений с использованием стандартных функций. линейная программа
Даны целые переменные x и y. Поменять местами значения переменны х tgx и ,не используя...

Вычисление значений выражений с использованием делегатов
Вычислить значение функции f(x), для введенного пользователем х. ∑a_i – это сумма всех целых...

Задания на вычисление значения выражений с использованием операторов цикла с внутренним разветвлением. Необходимо найти ошибку
#include <cmath> #include <conio.h> #include <iostream.h> #include <math.h> #include <cmath>...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru