Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Program Prim4; var




а:array[1..10] of real;

b:array[1..10, 1..10] of real;

i,j,m,n: integer;

Begin

{ввод элементов одномерного массива с клавиатуры}

for і:=1 to 10 do

Begin

writeln(' ввести' ,і, ' - элемент массива ') ;

readln(а[і]);

End;

{ввод элементов двумерного массива с клавиатуры построчно}

writeln('введите количество строк n<=10');

Readln(n);

writeln('введите количество столбцов m<=10');

Readln(m);

for i:=l to n do

for j:=1 to m do

Begin

writeln ( 'введите' ,і, ' , ',j, 'элемент массива') ;

readln(b[і,j]);

End ;

{вывод элементов одномерного массива на экран}

for i:=l to 10 do write(а[і]);

{вывод на экран элементов двумерного массива b в виде таблицы}

for i:=l to n do

Begin

for j:=l to m do write(b[i,j]);

Writeln;

End;

Примеры решения типовых задач

Задача 1. Вычислить значение функции y=b-sin2x*cos(ax). Значения а, bи х вводить с клавиатуры.

Таблица 7

Таблица обозначений в программе

Наименование Обозначение Тип данных
Функция У real
Аргумент X real
Коэффициенты а, b real

Программа:

Program Prim5;

var х,у,a, b:real;

Begin

writeln('Введите значения a,b,x');

readln (a,b,х) ; {вводим исходные данные с клавиатуры}

у : =b-sin (2*х) *cos (а*х) ; {вычисляем у}

writeln (у) ; {выводим на экран вычисленное значение }

End.

Задача 2. Составить программу расчета значений функции f(x)=sin(2x) *е * на интервале изменениях, равном[а,b] вn равноотстоящих точках. Вычисленные значения функции сохранить в массивес.Определить: 1) сумму вычисленных значений функции, 2) произведение отрицательных значений функции из числа вычисленных, 3) количество значений функции среди вычисленных, целая часть которых делится на 2 без остатка, 4) наибольшее из вычисленных значений функции. Значенияa, b, n вводить с клавиатуры (а<b иn>1).

Таблица 8

Таблица обозначений в программе

Наименование Обозначение Тип
Аргумент функции X real
Границы интервала изменения х а, b real
Кол-во точек n integer
Шаг изменения аргумента х d real
Сумма значений функции s real
Произведение отрицательных значений функции Р real
Количество значений функции, целая часть которых делится на 2 без остатка kol integer
Наибольшее из вычисленных значений функции max real
Массив, содержащий вычисленные значения функции с real
Текший номер расчетной точки і integer

Комментарий к программе. Для вычисления значений функции организуем цикл, в котором при изменяющемся значении аргумента функции х будем вычислять значения функции и записывать эти значения в массивс.Аргументх изменяется ота доb с шагомd, который равен длине интервала изменениях, деленной на количество расчетных точек минус 1, т.е. d: = (b-a)/ (n-1).

Таким образом, значение элемента массива с [1] равно значению функции в точкеа (точка с номером1), значение элементас [2] равно значению функции в точкеa+d (точка с номером 2) и т.д. Сумма вычисленных значений функции сеть сумма значений всех элементов массивас. Произведение отрицательных значений функции из числа вычисленных есть произведение элементов массивас, имеющих отрицательные значения. Количество значений функции среди вычисленных, целая часть которых делится на 2 без остатка есть количество элементов массивас, удовлетворяющих этому условию. Наибольшее из вычисленных значений функции есть наибольший по значению элемент в массивес.

Программа:

program Ргіm6;

Var

x,a,b,s,d,p,max:real;

і,n,kol:integer;

c:array [1..100] of real;

Begin

writeln ('Введите a,b (a<b)');

readln (a,b); writeln('Введите l<n<=100');

readln (n); d: = (b-a)/ (n-1) ; {вычисляем шаг изменения x}

{Вычисляем значения функции и сохраняем их в массиве}

х:=а; і:=1;

while i<=n do

Begin

с [і] : =sin (2*x) *exp (x); {вычисляем значение f(x) }

writeln (x, c[i]); {вывод на экран значения х и f (х) }

і : =і + 1; х : =x+d; {переходим к следующей расчетной точке }

End;

{Определяем сумму, произведение, количество и наибольшее значение}

s:=0; р:=1; kol:=0; тах:=с[1];

for i:=l to n do

Begin

s : =s+c [i] ; {накапливаем сумму в цикле}

if c[i]<0 then p :=p*c [і ];{накапливаем произведение}

if trunc(c[i]) mod 2 =0 then kol:=kol +l; {накапл. кол-во}

if c[i]>max then max:=c[i] ; {определяем наиб, зн-е}

End;

{Выводим результаты расчета на экран}

writeln( сумма =',s);

writeln(‘произведение = ',р);

writeln(количество значений функции =' ,kol) ;

writeln(наибольшее значение функции =' ,тах) ;

End.

Задача 3. Найти минимальный по значению элемент в двумерном массивеа, состоящем изn строк иm столбцов, значенияn,m вводятся с клавиатуры.

Таблица 9

Таблица обозначений в программе

Наименование Обозначение Тип
Массив а real
Кол-во строк и столбцов в массиве n, m integer
Минимальное значение min real
Индекс і/ j integer

Программа:


Поделиться:

Дата добавления: 2015-09-13; просмотров: 56; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.013 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты