Помощь - Поиск - Пользователи - Календарь
Полная версия: массив с нечтными элементами и средним геометрическим
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Таша
Не доганяю, помогите!

Задача: По данной функции s=arcsin (i/2) сформировать одномерный массив, состоящий из 20-40 элементов, при изменении аргумента в заданном интервале. Организовать форматный вывод массива с заголовками и индексами.
В сформированном массив определить и вывести с заголовками: количество нечетных элементов массива, а так же среднее геометрическое этих элементов.

Помогите разобрать с условием:
1) Массив надо заполнять путем нахождения результата функции и переноса его в массив???
2) Какие могут быть заголовки если массив одномерный??
3) При нахождении нечетного элемента выдает ошибку for i:=1 to n do
if a[i] mod 2 <> 0 then begin n:=n+1; Почему??
4) и самое последнее, что такое среднее геометрическое и какая у него формула????
volvo
Цитата
Массив надо заполнять путем нахождения результата функции и переноса его в массив???
Да. Находишь значение функции при очередном аргументе, и заносишь его в массив.
Цитата
Какие могут быть заголовки если массив одномерный??

Цитата
Количество нечетных элементов:
10
Среднее геометрическое:
20
Первая и третья строка - заголовки, вторая и четвертая - результаты вычислений. Что-то не так?
Цитата
При нахождении нечетного элемента выдает ошибку
А вот с этого вопроса надо было начинать smile.gif
Как описан массив? Он у тебя целочисленный? Четность/нечетность - это признак целого числа. А у тебя наверняка массив вещественных чисел...
Цитата
и самое последнее, что такое среднее геометрическое и какая у него формула????

Wiki: Среднее Геометрическое
Таша
Массив описан как integer, ошибку выдает при выполнении программы Runtime.
А по поводу заголовка и индекса я все равно не поняла((
И еще по поводу функции: там указан диапозон (-1,2;2,7), как я понимаю ее нужно считать через цикл. А чему равен шаг???
volvo
Цитата
Массив описан как integer, ошибку выдает при выполнении программы Runtime.
Если не вылетаешь за пределы массива - ошибок быть не должно. Какой хоть номер ошибки выдает? Телепатов-то нет здесь.

Цитата
как я понимаю ее нужно считать через цикл. А чему равен шаг???
Вообще-то обычно это делается так:
var
i: integer;
f, step: double;

const
n = 10;
start = -1.2;
finish = 2.7;

begin
step := (finish - start) / n;
f := start;
for i := 0 to n do
begin
writeln(f:10:5);
f := f + step;
end;
end.
TarasBer
Ничего не понял. Если функция - арксинус, то откуда целые элементы и чётность-нечётность (которая, кстати, проверяется "функцией" odd(), а не делением на два)?
Таша
я в математике вообще не сильна, а условие как правило преподы дают)

Добавлено через 4 мин.
то есть если через odd, то значение должно быть правдой??
спасибки, я этого не знала и всегда решала через mod
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.