Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Текст программы на языке Паскаль
Program Example_11; Var k, n, znak : integer; x, S, sl, st, E : real; Begin writeln; write(‘Введите значение х = ‘); read(х); write(‘Введите количество слагаемых суммы N = ‘); read(n); write(‘Введите точность вычисления суммы Е = ‘); read(Е); S := 0; znak := 1; st := 1; For k := 1 to n do begin st := st*x; S := S + znak*cos(k*x) / sqr(2*k-1) / st; znak := - znak end; writeln(‘Вариант а) S = ’, S:6:5); S := 0; znak := 1; st := 1; k := 1; repeat st := st*x; sl := cos(k*x) / sqr(2*k-1) / st; S := S + znak * sl; k := k + 1; znak := - znak until abs(sl) < E; writeln(‘Вариант б) S = ’, S:6:5); readln end. Данные для тестирования 1) Для x = 1, n = 3, Е = 0,04
2) Для x = 2, n = 4, Е = 0,0005 Для вычисления значений подобных выражений и подбора подходящих значений переменной х очень удобно пользоваться электронными таблицами Excel (рисунок 5.1). Рисунок 5.1 – Вычисление отдельных слагаемых и суммы в Microsoft Excel ЗАДАЧИ С ИСПОЛЬЗОВАНИЕМ МАССИВОВ Массивом называется тип данных, состоящий из фиксированного числа элементов, имеющих один и тот же тип. Каждый элемент массива имеет свой номер (индекс) для одномерных массивов и совокупность номеров для многомерных. Индексы представляют собой выражения, чаще всего целого типа. Все задачи этой темы делятся на два подраздела: лёгкие задачи и задачи средней сложности. Поскольку, при работе с массивом количество элементов в нём известно по условию задачи, то для обработки массивов наиболее часто используется оператор цикла с параметром (for). Приведём примеры решения задач с использованием массивов. Пример 6.1. Дан целочисленный массив А размера N. Вывести все содержащиеся в данном массиве четные числа, расположенные на нечетных местах в порядке возрастания их индексов, а также их количество K. Решение задачи Выберем схему решения поставленной задачи. После того как будут введены элементы массива, с помощью оператора цикла с параметром (for) и условного оператора организуем проверку номера элемента на нечетность и значения элемента на четность. Для этого можно воспользоваться стандартной функцией языка Паскаль odd(x), которая возвращает истину, если х – нечетно, и ложь, если х – четное. Если обозначить i – номер очередного элемента массива, тогда заданное в задаче условие можно записать с помощью логического выражения: odd(i) and (not odd(abs(A[i]))) Если результатом этого выражения будет истина, то к переменной K прибавляем 1 и такой элемент массива выводим на экран. По окончании цикла на экран выводим получившееся К. Блок-схема алгоритма – представлена на рисунке 6.1. Текст программы на языке Паскаль Program Example_12; Var K, n, i : integer; A : array [1..30] of integer; Begin writeln; write(‘Введите количество элементов массива N = ‘); read(n); write(‘Введите ‘, n, ‘целых чисел - элементов массива А:‘); For i := 1 to n do read(A[i]); K := 0; For i := 1 to n do If odd(i) and (not odd(abs(A[i]))) then begin K := K + 1; writeln(‘A[‘, i, ’]= ‘, A[i]) end; writeln(‘K = ’, K); readln end. Рисунок 6.1 – Блок-схема алгоритма для примера 6.1 Данные для тестирования 1) Для n = 10, A = {5, 7, 8, 10, -12, 3, 1, 4, 6, 2} ð A[3] = 8 A[5] = -12 A[9] = 6 Пример 6.2. Дан целочисленный массив {x} размера N и целое число a. Если в массиве {x} есть хотя бы один элемент, равный a, то получить сумму всех элементов, следующих за первым таким элементом. В противном случае вывести сообщение об отсутствии такого элемента. Решение задачи Выберем схему решения поставленной задачи. В этой задаче требуется: 1) определить имеется ли вообще в заданном массиве элемент, равный числу а; 2) если, такой элемент имеется, то запомнить его номер; 3) вычислить сумму элементов массива, предшествующих найденному элементу или вывести сообщение об отсутствии такового. Чтобы запомнить номер искомого элемента, введём переменную K. Первоначально зададим K = 0. После того как будут введены все элементы массива {x} и число а, с помощью оператора цикла с параметром (for) и условного оператора организуем поиск элемента, равного а. Как только будет найден первый такой элемент, присвоим его номер переменной K и, с помощью процедуры break, прервём дальнейшее выполнение цикла for, т.е. просмотр оставшейся части массива. Если мы проверим весь массив и элемента равного а не обнаружится, то значение переменной K останется равным нулю. После завершения просмотра массива с помощью условного оператора проверим значение переменной K – если оно осталось равным нулю, то выведем сообщение об отсутствии элемента равного а, в противном случае с помощью оператора цикла for вычислим искомую сумму и выведем её значение. Блок-схема алгоритма – представлена на рисунке 6.2. |
||
Последнее изменение этой страницы: 2018-04-12; просмотров: 482. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |