Лекции.Орг


Поиск:




Категории:

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

 

 

 

 


Результаты выполнения программы

Министерство образования Республики Беларусь

 

Отчёт по лабораторной работе №8

«Обработка двухмерных массивов»

 


Выполнила: Студентка гр. АСОИ-101
Игнатушко Татьяна

 


Могилев 2010

Тема: «Обработка двухмерных массивов»

 

Цель работы

Получение практических навыков в работе с двухмерными массивами.

 

Постановка задачи

Для конкретного варианта ввести массив исходных данных и выполнить над ним указанные действия. Написать программу, которая работает с любым набором данных. Входную информацию и результаты счета вывести на печать, снабдив их соответствующими заголовками.

 

Вариант 9

  1. Найти наибольший элемент главной диагонали матрицы А(4х4 ) и вывести на экран все строку, в которой он находится. Найти наибольший элемент главной диагонали матрицы А(4х4 ) и вывести на экран все строку, в которой он находится.

2. Соседями элемента Aij в матрице назовем элементы Akl с i- 1 £ k £ i +1, j -1 £ l £ j +1, (k, l) ¹ (i, j). Операция сглаживания матрицы дает новую матрицу того же размера, каждый элемент которой получается как среднее арифметическое имеющихся соседей соответствующего элемента исходной матрицы. Построить результат сглаживания заданной вещественной матрицы размером 10´10.

В сглаженной матрице найти сумму модулей элементов, расположенных ниже главной диагонали.

 

Текст программы

 

1. #include <windows.h>

#include <stdio.h>

int main()

{

SetConsoleOutputCP(1251);

const n=4;

int i,j,max=0;

float a[n][n];

printf("Введите элементы матрицы A:\n");

for(i=0;i<n;i++)

for(j=0;j<n;j++) { printf("a[%d][%d]=",i+1,j+1);

scanf("%f",&a[i][j]);}

printf("\nМатрица A:\n\n");

for(i=0;i<n;i++){

for(j=0;j<n;j++) printf("%7.2f",a[i][j]);

printf("\n\n");}

for (i=1;i<n;i++) if (a[max][max]<a[i][i]) max=i;

 

printf("Максимальный элемент главной диагонали - a[%d][%d]=%f;\nстрока, в которой находится этот элемент: ",max+1,max+1,a[max][max]);

for (j=0;j<n;j++) printf("%7.2f",a[max][j]);

printf("\n");

 

return 0;

}

2. #include<windows.h>

#include<stdio.h>

#include<time.h>

#include<math.h>

main()

{ SetConsoleOutputCP(1251);

const n=10;

int i,j;

float a[n][n],b[n][n], sum=0;

srand(time(NULL));

printf("Матрица 10x10:\n\n");

for(i=0;i<n;i++)

{for(j=0;j<n;j++)

{a[i][j]=-10+20.*rand()/RAND_MAX;

printf("%6.2f",a[i][j]);} printf("\n");}

printf("\n");

for(i=1;i<n-1;i++)

for(j=1;j<n-1;j++) b[i][j]=(a[i-1][j-1]+a[i-1][j]+a[i-1][j+1]+a[i][j-1]+a[i][j+1]+a[i+1][j-1]+a[i+1][j]+a[i+1][j+1])/8;

b[0][0]=(a[0][1]+a[1][0]+a[1][1])/3;

b[n-1][n-1]=(a[n-1][n-2]+a[n-2][n-1]+a[n-2][n-2])/3;

b[0][n-1]=(a[0][n-2]+a[1][n-1]+a[1][n-2])/3;

b[n-1][0]=(a[n-1][1]+a[n-2][0]+a[n-2][1])/3;

for(j=1;j<n-1;j++) b[0][j]=(a[0][j-1]+a[0][j+1]+a[1][j-1]+a[1][j]+a[1][j+1])/5;

for(j=1;j<n-1;j++) b[n-1][j]=(a[n-1][j-1]+a[n-1][j+1]+a[n-2][j-1]+a[n-2][j+1]+a[n-2][j])/5;

for(j=1;j<n-1;j++) b[j][0]=(a[j-1][0]+a[j+1][0]+a[j-1][1]+a[j+1][1]+a[j][1])/5;

for(j=1;j<n-1;j++) b[j][n-1]=(a[j-1][n-1]+a[j+1][n-1]+a[j-1][n-2]+a[j][n-2]+a[j+1][n-2])/5;

printf("\n\n");

printf("Сглаженная матрица:\n\n");

for(i=0;i<n;i++)

{for(j=0;j<n;j++) printf("%7.2f",b[i][j]); printf("\n");}

printf("\n");

for(j=0;j<n-1;j++)

for(i=j+1;i<n;i++) sum+=fabs(a[i][j]);

printf("Сумма модулей элементов, расположенных ниже главной диагонали равна %.2f\n",sum);

return 0;}

 

Результаты выполнения программы

1.

2.

 



<== предыдущая лекция | следующая лекция ==>
График труда и отдыха водителя | Реакции среды в различных растворах солей
Поделиться с друзьями:


Дата добавления: 2016-09-03; Мы поможем в написании ваших работ!; просмотров: 349 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Вы никогда не пересечете океан, если не наберетесь мужества потерять берег из виду. © Христофор Колумб
==> читать все изречения...

2286 - | 2109 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.