Частина тексту файла (без зображень, графіків і формул):
Тема: Використання вказівників для роботи з масивами даних.
Мета роботи: Освоїти способи звертання до елементів масивів за допомогою вказівників. Навчитись виділяти та використовувати динамічну пам’ять для розміщення масивів даних.
Постановка задачі. Написати програму, яка здійснює опрацювання масиву згідно заданого варіанту. В програмі використати динамічне виділення пам’яті для масиву. Всі операції з елементами масиву здійснювати тільки за допомогою вказівників. Елементи масиву вводити з клавіатури. Програма повинна видавати підказку користувачу про те який елемент вводити.
Варіант8Написати програму, яка обчислює середнє арифметичне елементів двовимірного масиву без врахування мінімального та максимального елементів.
Блок-схема:
Код програми мовою С
#include <stdio.h>
#include <stdlib.h>
#define N 100
int main ()
{
int arr[N][N];
int i, n, m, sum = 0, j;
int min, max;
printf ("Enter length (M x N):\nM = ");
scanf ("%d", &m);
printf ("N = ");
scanf ("%d", &n);
for (i = 0; i < m; i++)
for (j = 0; j < n; j++)
{
printf("x[%d][%d] = ", i, j);
scanf("%d", &arr[i][j]);
}
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
printf("%5d", arr[i][j]);
printf ("\n");
}
min = arr[0][0];
max = arr[0][0];
for (i = 0; i < m; i++)
for (j = 0; j < m; j++)
{
if (arr[i][j] < min)
min = arr[i][j];
if (arr[i][j] > max)
max = arr[i][j];
}
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
{
if (arr[i][j] == min);
else if (arr[i][j] == max);
else sum +=arr[i][j];
}
printf ("Suma: %d\n", sum);
printf ("max: %d\n", max);
printf ("min: %d\n", min);
return 0;
}
Результати та налагодження:
Висновок: В даній лабораторній роботі я освоїв способи звертання до елементів масивів за допомогою вказівників. Навчився виділяти та використовувати динамічну пам’ять для розміщення масивів даних. Знаходити суму масиву без урахування мах і min значення.