Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Работа с массивами
Задача. Разработать программу решения 4-х взаимосвязанных задач 1) расчёт элементов квадратной матрицы A=a(i,j), i,j=1,2,… по заданной формуле;
2) вычисление элементов вектора X=x(i) i=1,2,… по заданному правилу;
3) упорядочение элементов матрицы А или вектора Х;
4) вычисление значения функции y по заданной формуле.
Пример. 1) ; ;
2) ; ;
3) упорядочить элементы второго столбца матрицы А по убыванию значений;
4) ; .
Задание выполнить для n=6. Замечание. Предварительно провести отладку программы при n=3, для чего получить решение задачи вручную (или с помощью калькулятора) и проверить полученные данные на ЭВМ.
Блок-схема алгоритма
нет
да
нет
да
Паскаль-программа program prim5; var a:array[1..10,1..10] of real; x:array [1..10] of real; i,j,k,n:integer; y,s,c:real; begin writeln(‘Введите n’); read(n); {---------------------------------------часть 1-----------------------------------} for i:=1 to n do for j:=1 to n do a[i,j]:=(2*j*i+4*i)/j; writeln(‘ ‘:20,’МАТРИЦА А’); for i:=1 to n do begin for j:=1 to n do write(a[i,j]:8:3); writeln; end; {---------------------------------------часть 2-----------------------------------} for i:=1 to n do begin s:=0; for j:=1 to n do s:=s+sqr(a[i,j]); x[i]:=sqrt(s)/n; end; writeln(‘ ‘:20,’ВЕКТОР Х’); for i:=1 to n do write(x[i]:8:3); {---------------------------------------часть 3-----------------------------------} for i:=1 to n-1 do begin k:=i; for j:=i+1 to n do if a[j,2]>a[k,2] then k:=j; if i<>k then begin c:=a[i,2]; a[i,2]:=a[k,2]; a[k,2]:=c; end; end; writeln(‘ ‘:14,’УПОРЯДОЧЕННАЯ МАТРИЦА’); for i:=1 to n do begin for j:=1 to n do write(a[i,j]:8:3); writeln; end; {---------------------------------------часть 4-----------------------------------} y:=1; for i:=1 to n do begin s:=0; for k:=1 to n do s:=s+x[k]; if x[i]<>0 then y:=y*x[i]*s; end; writeln(‘ЗНАЧЕНИЕ ФУНКЦИИ У=’,y:1:3); end.
Результаты Введите n=6 МАТРИЦА А 6.000 4.000 3.333 3.000 2.800 2.667 12.000 8.000 6.667 6.000 5.600 5.333 18.000 12.000 10.000 9.000 8.400 8.000 24.000 16.000 13.333 12.000 11.200 10.667 30.000 20.000 16.667 15.000 14.000 13.333 36.000 24.000 20.000 18.000 16.800 16.000
ВЕКТОР X 1.555 3.110 4.665 6.220 7.776 9.331
УПОРЯДОЧЕННАЯ МАТРИЦА А 6.000 24.000 3.333 3.000 2.800 2.667 12.000 20.000 6.667 6.000 5.600 5.333 18.000 16.000 10.000 9.000 8.400 8.000 24.000 12.000 13.333 12.000 11.200 10.667 30.000 8.000 16.667 15.000 14.000 13.333 36.000 4.000 20.000 18.000 16.800 16.000
ЗНАЧЕНИЕ ФУНКЦИИ Y=123454118108000.000 Список рекомендуемой литературы
1. Задания для практических и лабораторных занятий по информатике (работы 1-5): Методические указания./ Cост. Т.Г. Умергалин, И.Г. Мухамадеев, Э.В. Писаренко - Уфа: изд-во УГНТУ,1997.-51 с. 2. Основы программирования и работы в интегрированной среде Турбо-Паскаль: Методические указания./ Cост Т.Г. Умергалин, И.Г. Мухамадеев - Уфа: изд-во УГНТУ,1992.-45 с. 3. Емелина Е.И. Основы программирования на языке Паскаль. - М.: Финансы и статистика, 1997.-208 с. 4. Фаронов В.В. Турбо Паскаль: В 3-х кн. Кн. 1. Основы Турбо Паскаля. – М.: Учебно-инженерный центр “МВТУ-ФЕСТО ДИДАКТИК”,1992. – 304 с.
Date: 2015-08-15; view: 371; Нарушение авторских прав |