50152

Программирование задач с использованием двумерных массивов. Ввод, вывод, упорядочивание

Лабораторная работа

Информатика, кибернетика и программирование

Чтобы описать массив надо сообщить компилятору: сколько в нем элементов какого типа эти элементы как они нумеруются. Пример: Вычислить суммы элементов массива по столбцам Текст программы...

Русский

2014-01-16

53 KB

22 чел.

Лабораторная Работа № 12

Тема: Программирование задач с использованием двумерных массивов. Ввод, вывод, упорядочивание.

Цель: Получение практических навыков  в использовании двумерных массивов - матриц.

Теоретические сведения:

Приступая к выполнению задачи, следует вспомнить, что:

  •  Массив – это фиксированное количество упорядоченных компонент одного типа, снабжённых индексами.
  •  Чтобы описать массив, надо сообщить компилятору: сколько в нем элементов, какого типа эти элементы, как они нумеруются.
  •  Элементы массива нумеруются с нуля.
  •  Доступ к элементу массива осуществляется путем указания индекса (номера) элемента.
  •  Доступ к элементам массива можно осуществлять при помощи указателя.
  •  В инструкции объявления массива удобно использовать именованную константу, объявленную в директиве #define.
  •  Для ввода, вывода и обработки массивов удобно использовать инструкции циклов (for, while).
  •  Типичной ошибкой при использовании массивов является обращение к несуществующему элементу, то есть выход индекса за допустимое значение.

Пример: Вычислить суммы элементов массива по столбцам

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

#include<stdio.h>

#conio.h>

#define ROW 3 //кол-во строк

#define COL 4 //кол-во столбцов

void main()

{

int a[ROW][COL]; //массив

int s[COL]; //сумма элементов

int I,j;

puts(“Вводите массив построчно”);

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

{

for(j=0; j<COL; j++)

           scanf(“%i”,&a[i][j]);

}

puts(“Введенный массив”);

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

{

for(j=0; j<COL; j++)

 printf(“%i”,a[i][j]);

printf(“\n”);

}

//очистим массив s

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

s[i]=0;

//обработка 

for (j=0; i<COL ;J++)

for(i=0; j<ROW; i++)

s[j]+=a[i][j];

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

printf(“%i”,s[i]);

getch();

}//main

Варианты заданий:

Осуществить ввод массива с клавиатуры и выполнить задание своего варианта:

Вариант

Массив

Задание

Условия

1

A(10,15)

Вычислить и запомнить сумму и число положительных элементов каждого столбца матрицы. Результаты отпечатать в виде 2-х строк

AIJ>0

2

A(N,M)

Вычислить и запомнить суммы и числа элементов каждой строки матрицы. Результат отпечатать в виде 2-х столбцов

N≤20 M≤15

3

B(N,N)

Вычислить сумму и число элементов матрицы, находящихся под главной диагональю и на ней

N≤12

4

C(N,N)

Вычислить сумму и число положительных элементов матрицы, находящихся над главной диагональю

CIJ>0 N≤12

5

D(K,K)

Записать на место отрицательных элементов матрицы нули и вывести ее на печать в общепринятом виде

K≤10

6

D(10,10)

Записать на место отрицательных элементов матрицы нули, а наместо положительных – единицы. Вывести на печать нижнюю треугольную матрицу в общепринятом виде

-

7

F(N,M)

Найти в каждой строке матрицы максимальный и минимальный элементы  и вывести их в виде 2-х столбцов

N≤20 M≤10

8

F(10,8)

Транспонировать матрицу и вывести на печать элементы ее главной диагонали и ее саму в общепринятом виде

-

9

N(10,10)

Для целочисленной матрицы найти для каждой строки число элементов кратных 5 и наибольший из полученных результатов

 

10

N(10,10)

Из положительных элементов матрицы N сформировать матрицу M и распечатать ее в общепринятом виде.

-

11

P(N,N)

Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали. Отпечатать полученную матрицу в общепринятом виде

N≤15

12

R(K,N)

Найти наибольший и наименьший элементы матрицы и поменять их местами  

K≤20 N≤10

13

S(25,8)

Вычислить среднее арифметическое каждой строки и записать результаты в одномерный массив и найти максимальный его элемент

-

14

T(N,M)

Найти строку с наибольшей и наименьшей суммой элементов. Вывести на печать найденные строки и суммы их элементов

N≤20 M≤15

15

V(15,10)

Упорядочить по возрастанию элементы каждой строки матрицы и отпечатать полученную матрицу в общепринятом виде

-

Контрольные вопросы:

  1.  Что понимается под массивом?
  2.  Как описываются массивы в разделе переменных?
  3.  Как организуется ввод массива в программе?
  4.  Как организуется вывод массива в программе?
  5.  Какие операции разрешены над элементами массива?

Содержание отчета:

  1.  Краткие теоретические сведения.
  2.  Схемы алгоритмов.
  3.  Тексты составленных программ.
  4.  Протоколы к составленным программам.
  5.  Вывод о проделанной работе.


 

А также другие работы, которые могут Вас заинтересовать

85541. Урок Доброти за творами В.О. Сухомлинського 53.5 KB
  Обладнання: Крилаті вислови прислів’я про доброту твори В. Творити повсякчас добро для інших – це велике покликання людини. Тож хочу наш урок позакласного читання розпочати такими словами: Живи добро звершай Та нагород за це не вимагай Хай оживає істина стара: Людина починається з добра Саме цей вислів Людина починається з добра є темою нашого уроку ДОБРОТИ.
85542. Життя і творчість М. Рильського М. Рильський. Не кидайсь хлібом 69.5 KB
  Мета: Продовжити знайомити дітей із творчістю українського письменника М. Виховувати почуття поваги до праці хлібороба бережне ставлення до хліба. Давайте розшифруємо що ж хотіли хлопчаки нам сказати НЕ кидайсь хлібом IV Повідомлення теми та мети уроку Цими словами розпочинається ще один вірш...
85543. З думкою про канікули. Правила поведінки під час масових заходів 63.5 KB
  Мета: Навчати учнів бачити, відчувати створені словами образи природи; удосконалювати техніку читання віршованих та прозових творів, насичених діалогами. Вчити свідомо сприймати художні тексти, визначати головну думку в прочитаному творі.
85544. Як по-різному звучать мелодії природи... С. Жупанин «Мелодії природи». О. Олесь «В небі жайворонки в’ються» 81.5 KB
  Вправи для підвищення швидкості читання і розвитку мовлення Творче завдання Розвиток зв’язного мовлення. Співи яких птахів ви чуєте Який настрій викликає у вас щебетання пташок 2 Самостійне читання учнями тексту на с. Читання слів знизу вгору. Читання слів у парі римовані слова.
85545. Т.Г.Шевченко – поет, художник, патріот 144.5 KB
  Шевченка вчити сприймати зміст поезії на слух відображати його в малюнках викликати бажання розповідати вивчені вірші й слухати нові показати барвистість красу рідної мови її мелодійність; розвивати пам’ять увагу спостережливість поповнювати словниковий запас учнів; виховувати милосердя доброту любов...
85546. Уроку позакласного читання «Людина починається з добра» 88 KB
  Розширити знання дітей про життя і творчість В.Сухомлинського; формувати оцінні судження щодо ознак добра і зла; збагачувати словник учнів; формувати читацький інтерес; розвивати вміння колективно обговорювати прочитане, уважно і зацікавлено слухати товариша і доповнювати його відповідь у ході бесіди...
85547. Цікаве у світі тварин. О.Копиленко «Кріт-неборака» 33.5 KB
  Ознайомитися з особистістю О. Копиленка; викликати інтерес до його творчості; вдосконалювати навички правильного, виразного та швидкого читання; розвивати вміння переказувати прочитане; знаходити в тексті описи й міркування, ознаки науково-популярного оповідання...
85548. Наталія Забіла. «Чотири пори року» 63.5 KB
  Учити правильно, виразно читати поетичні твори, інтонацією передавати настрій твору, учити бачити та відчувати красу й різноманітність природних явищ, передавати своє ставлення до змісту; розвивати читацькі навички учнів, збагачувати словниковий запас дітей...
85549. Урок позакласного читання «Осінні зустрічі» 58.5 KB
  Бо це вже осінь наступила Зажуру тиху розлила Все золотом осіннім вкрила Туманом землю сповила. Всі учні класу стають на сцені в три ряди і виконують пісню Осінь муз. Коваля Дні коротшають потроху Відцвіта безхмарна просинь В край наш з дальньої дороги Завітала мила Осінь.