Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Топ:
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Интересное:
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Дисциплины:
2017-12-22 | 177 |
5.00
из
|
Заказать работу |
В некоторых вариантах заданий необходимо работать со знакопеременным рядом. Рассмотрим в качестве примера задачу, в которой необходимо вычислить значение y, заданной следующим образом:
.
Наличие сомножителя делает ряд знакопеременным. Изменение знака в теле цикла можно учесть путем введения вспомогательной переменной (назовем ее znak). Изменение знака можно реализовать с помощью оператора znak = -znak. Ниже приведен фрагмент программы, выполняющий необходимые вычисления:
y = 0;
znak = 1;
for(i = 2; i ≤ n; i++)
{ y = y + znak * sqr(i);
znak = - znak;
}
Вычисление очередного слагаемого по рекуррентной формуле
Пусть необходимо вычислить сумму следующего вида:
.
На первый взгляд, для вычисления рассматриваемой суммы необходимо организовать вложенные циклы. При этом внешний цикл должен накапливать сумму y, а внутренний цикл должен вычислять факториал i!. Такой подход имеет ряд недостатков. Во-первых, поскольку функция i! быстро растет, это может привести к переполнению разрядной сетки. В то же время значение очередного слагаемого, определяемого величиной
может помещаться в разрядной сетке компьютера. Вторым недостатком является необходимость организации вложенных циклов.
Другой подход к вычислению этой суммы связан с использованием функциональной связи между двумя последовательными значениями слагаемых искомой суммы y. Обозначим эти значения слагаемых через Ai и. Ai+1 Составим отношение этих слагаемых
При таком подходе отпадает необходимость в вычислении факториала i!. Кроме того, вычисления могут быть выполнены с помощью одного цикла (нет необходимости в организации вложенных циклов).
Следующий фрагмент программы реализует необходимые вычисления:
y = 0;
A = x*x*x*x / 24;
for (i = 4; i ≤ n; i++)
{
y = y + A;
A = A * x / (i + 1);
}
Методические указания по выполнению
Контрольного расчета
В контрольном расчете для данной лабораторной работы необходимо выбрать численные значения величин n и x. При контрольном расчете рекомендуется значение переменной n выбирать таким образом, чтобы можно было проверить организацию цикла при минимальном количестве вычислений. В рассматриваемом примере варианта 31 для контрольного расчета выбрано n = 5. Тогда с учетом начального значения k = 3 вычисления в рабочей части цикла будут выполняться трижды. Значение величины x следует выбирать таким образом, чтобы упростить вычисления. В варианте 31 удобно выбрать x = 3. Тогда d = = 2, а с = 2 * 32 = 54. При выбранных значениях величин n и x величина s будет равна s = 0 + (54 * 3 + 2 * cos 3 – 2, 3 / 3) + (54 * 4 + 2 * cos 4 – 2,3 / 4) + (54 * 5 + 2 * cos 4 – 2, 3 / 5) = 643, 478. Окончательный результат контрольного расчета:
y = 6,3 * 3 – 4* 643, 478 = -2555, 014.
Результаты расчетов необходимо свести в таблицу 4.3
Таблица 4.3
Таблица вычислений
Назначение набора данных | Набор данных | Результаты ручных вычислений | Результаты машинных вычислений | |
n | x | y | y | |
Контрольный набор | -2555,014 | |||
Рабочий набор | 4,75 |
4.7. Контрольные вопросы
1. Найдите в Вашей программе основные компоненты функциональной схемы цикла: подготовку цикла (инициализацию цикла), рабочую часть, подготовку к новому выполнению цикла, проверку нахождения в цикле.
2. Укажите, какие элементы Вашей программы относятся к предварительному подалгоритму, а какие - к завершающему подалгоритму?
3. Укажите, была ли необходимость в чистке цикла в Вашей программе?
4. Напишите программу для вычисления значения величины у, заданной следующим образом
.
5. Напишите рекуррентную формулу вычисления очередного слагаемого для вариантов 5, 7, 14.
Лабораторная работа 5
Программирование вложенных циклов
Постановка задачи
В настоящей лабораторной работе необходимо выполнить вычисления, для организации которых следует использовать несколько циклов, причем некоторые из них должны быть вложенными.
Варианты заданий
В работе необходимо вычислять значение(я) функции y = f (x). Варианты заданий отличаются видом функции (табл.5.1). В нечетных вариантах необходимо вычислять значение функции для одного значения аргумента x, а в четных следует решать задачу табулирования. При вычислении значения функции оказывается необходимым вычислять несколько сумм (произведений). Вычисление некоторых сумм (произведений) может потребовать организации вложенных циклов.
Таблица 5.1
Номер | Функция | Рабочий набор | ||||
x | m | Xнач | xкон | n | ||
- | - | |||||
- | ||||||
1,5 | - | - | ||||
- | ||||||
- | - | |||||
- | ||||||
2,5 | - | - | ||||
Номер | Функция | Рабочий набор | ||||
x | m | Xнач | xкон | n | ||
- | ||||||
- | - | |||||
- | ||||||
- | - | |||||
- | ||||||
- | - | |||||
- | ||||||
1,5 | - | - | ||||
- | ||||||
4,5 | - | - | ||||
- | 0,5 | |||||
1,2 | - | - | ||||
- | 1,5 | 2,5 |
Окончание табл. 5.1
Номер | Функция | Рабочий набор | ||||
x | m | Xнач | xкон | n | ||
- | - | |||||
- | ||||||
- | - | |||||
- | ||||||
- | - | |||||
- | ||||||
- | - | |||||
- | ||||||
- | - | |||||
- |
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!