Составьте программу которая запрашивает размеры двумерного массива значения его элементов

Программа считает сумму элементов в каждой строке и выдаёт номер строки с наименьшей
суммой элементов: 1 строка.

Решение:

Console.Write(«Введите размерность m массива: «);
int m = Convert.ToInt32(Console.ReadLine());
Console.Write(«Введите размерность n массива: «);
int n = Convert.ToInt32(Console.ReadLine());
int[,] randomArray = new int[m,n];

void mas(int m, int n)
int i,j;
Random rand = new Random();
for (i = 0; i < m; i++)
for (j = 0; j < n; j++)
randomArray[i,j] = rand.Next(1,9);
>
>
>

void printm(int[,] array)
int i,j;
for (i = 0; i < array.GetLength(0); i++)
Console.WriteLine();
for (j = 0; j < array.GetLength(1); j++)
Console.Write($» «);
>
Console.WriteLine();
>
>

mas(m,n);
Console.WriteLine(«nИсходный массив: «);
printm(randomArray);

// Функция, считающая сумму элементов в строке

Уроки C++ / #8 урок — Двумерные массивы


int SumLine(int[,] array, int i)
int sum = array[i,0];
for (int j = 1; j < array.GetLength(1); j++)
sum += array[i,j];
>
return sum;
>

int minSum = 1;
int sum = SumLine(randomArray, 0);
for (int i = 1; i < randomArray.GetLength(0); i++)
if (sum > SumLine(randomArray, i))
sum = SumLine(randomArray, i);
minSum = i+1;
>
>
Console.WriteLine($»nСтрока c наименьшей суммой элементов: »);

Пояснение:

Решение надо просто разбить на функцию — SumLine, которая считает сумму элементов в одной стоке и цикл For, который перебирает все строки и находит номер строки, где наименьшая сумма элементов.

Источник: blablacode.ru

Лаб9

Цель работы: Сформировать понятие двумерного массива числового типа. Овладеть умениями обращения к элементам двумерного массива, ввода и вывода массива, составления алгоритмов обработки массивов.

Задание 1

Загрузите программу из прошлой лабораторной работы, которая запрашивает размеры двумерного массива, значения его элементов и выводит на очищенный экран получившийся массив.

Дополните предыдущую программу так:

  1. обнулялись все максимальные элементы в массиве;
  2. удваивались все максимальные элементы в массиве;
  3. все максимальные элементы в массиве уменьшались в два раза;
  4. все минимальные элементы в массиве заменялись на среднее арифметическое;
  5. вычислялось количество минимальных элементов;
  6. все минимальные элементы в массиве заменялись на противоположные;
  7. все максимальные элементы в массиве заменялись противоположные.

Задание 2

  1. суммы элементов выше главной диагонали;
  2. количества 0 ниже главной диагонали;
  3. произведения ненулевых элементов ниже побочной диагонали;
  4. произведения положительных элементов выше побочной диагонали;
  5. максимального элемента выше побочной диагонали;
  6. минимального элемента ниже побочной диагонали;
  7. суммы положительных элементов выше главной диагонали;
  8. количества отрицательных элементов ниже главной диагонали.

Задание 3

  1. Задача C. Состязания — 1
  2. Задача D. Состязания — 2
  3. Задача E. Состязания — 3
  4. Задача F. Состязания — 4
  5. Задача G. Состязания — 5

Задание 4

Составьте программу для нахождения количества: 4.1 строк, где все элементы одинаковы; 4.2 столбцов, где все элементы положительны; 4.3 строк, где знаки элементов чередуются; 4.4 столбцов, совпадающих с первым; 4.5 нулевых строк; 4.6 столбцов, где все элементы одинаковы; 4.7 строк, совпадающих с последней; 4.8 нулевых столбцов.

Двумерный динамический массив c++ пример. Создание, заполнение, удаление. Динамические массивы. #56

Задание 5

  1. Определить, есть ли в массиве одинаковые строки;
  2. Определить сколько в массиве столбцов, где все элементы различны;
  3. Определить, верно ли, что все строки упорядочены по убыванию;
  4. Определить, верно ли, что максимальные элементы всех строк находятся в разных столбцах;
  5. Определить, верно ли, что минимальные элементы всех столбцов находятся в разных строках;
  6. Определить, является ли массив магическим квадратом, т.е. совпадает ли в нем сумма каждой строки, каждого столбца и двух диагоналей;
  7. Найти минимальное число К, для которого хотя бы в одной строке все элементы меньше или равны К;
  8. Найти максимальное число К, для которого в каждой строке есть хотя бы один элемент, больший или равный К.

Дополнительные задачи.

  1. На двух прозрачных листах бумаги в клетку размерами 20х20 нарисовано по одной фигуре, состоящей из закрашенных клеток. Составьте программу, которая отвечает на вопрос: конгруентны ли эти фигуры? (1 балл).
  2. N спортсменов уходят со старта в моменты времени t11 балл).
  3. Назовем таблицу «хорошей», если сумма чисел, записанных в клетках любого пути из A[1,1] в A[m,n] одинакова. Составить программу проверки, является ли данная таблица «хорошей» (1 балл).
  4. В квадратной матрице размерами MxN элементы каждой строки и каждого столбца упорядочены по возрастанию. Опишите, обоснуйте и реализуйте эффективный алгоритм (трудоемкости M+N) определения, встречается ли данное число в таблице (1 балл)).
  5. Назовем путем из одного угла прямоугольной таблицы в противоположный любую последовательность клеток таблицы, которая начинается в одном углу, заканчивается в другом, любые две соседние клетки имеют общую сторону и при этом количество клеток последовательности минимально. Составьте программу для нахождения в прямоугольной таблице, в каждой клетке которой записаны некие числа, пути из одного угла в противоположный с максимальной суммой чисел, записанных в клетках пути. (1 балл).
  6. Составить программу для нахождения пути из одного угла в противоположный в лабиринте размерами MxN, состоящем из свободных и закрашенных клеток (1 балл).
  7. Даны два поля шахматной доски. Найти минимальное число ходов, которые нужны шахматному коню для перехода с первого поля на второе. (2 балла).
Читайте также:
Как добавить программу в избранное на Айфоне

Источник: studfile.net

Конспект урока программирование обработки двумерных массивов 10 класс семакин

Формы организации: фронтальная работа, индивидуальная работа.

Оборудование: задания для работы в классе (индивидуальные карточки, задание на компьютере), записи на доске.

Ход урока:

1. Организационный момент .

Приветствие.
Сообщается тема.
Ставиться цель урока и задачи.

2. Актуализация полученных знаний

Устно проговариваются основные моменты предыдущей темы: “Одномерные массивы”. Фронтальный мини опрос по основным определениям.

3. Целеполагание, постановка задач:

4. Лекция

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

: array [н_индекс_1..в_индекс_1, н_индекс_2 ..в_индекс_2] of

A: array[1..n,1..m] of integer;

Для того чтобы использовать элемент массива, надо указать имя массива и индекс элемента. Первый индекс соответствует номеру строки, второй – номеру столбца. Например:

for i:=1 to n do
for j:=1 to n do
a[i,j]:= random (100);

При инициализации двумерных массивов каждая строка заключается в дополнительную пару круглых скобок:

Аналогом массивов языка Паскаль в математике являются матрицы. Матрица, у которой число строк равно числу столбцов, называется квадратной. A(n,n) – квадратная матрица

Основные свойства квадратных матриц:

1. Квадратные матрицы имеют главную и побочные диагонали. Например, для матрицы А на главной диагонали лежат элементы 1,5 и 9, а на побочной – 3, 5 и 7.

i=j – элементы расположены на главной диагонали;
i> j – элементы расположены ниже главной диагонали;
i n+1– элементы расположены под побочной диагональю;

2. Квадратная матрица, у которой все элементы, исключая элементы главной диагонали, равны нулю, называется диагональной матрицей

3. Диагональная матрица, у которой все элементы, стоящие на главной диагонали, равны 1 , называется единичной матрицей

4. Если в матрице A (m,n) поменять местами строки и столбцы, то получится матрица A t (m,n), которая называется транспонированной матрицей.

    суммировать;
  • находить разность;
  • произведение матрицы на некоторое число;
  • произведение двух матриц.

for i:= 1 to n do
begin
for j:= 1 to m do
write (a[i,j]:4);
writeln
end;

randomize;
for i:=1 to m do
begin
for j:=1 to n do
begin
a[i,j]:=random(100)-10;
write(a[i,j]:4);
end;
writeln;
end;

for i:= 1 to n do
for j:= 1 to m do
if j>m then write (a[i,j]:4)
else writeln (a[i,j]:4);

for i:= 1 to n do
begin
for j:= 1 to m do
c[i,j]:=a[i,j]+ b[i,j]
end;

5. Первичный контроль

“Контурная карта” 2 варианта

Var
A= array[1..n,1..m] of integer;

… … двумерных массивов каждая строка заключается в дополнительную пару круглых скобок:

Основные действия, которые можно выполнять над матрицами: суммирование, произведение двух матриц,….,….

Матрица, у которой число строк равно числу столбцов, называется …. ….. .

for i:= 1 to n do
begin
for j:= 1 to m do
c[i,j]:=a[i,j]+ a[i,j]
end;

Какую типовую задачу выполняет алгоритм?

…… называется совокупность данных, каждое значение которых зависит от двух чисел, которые можно рассматривать как индекс столбца в матрице.

Диагональная матрица, у которой все элементы, стоящие на главной диагонали, равны … , называется единичной матрицей

Квадратная матрица, у которой все элементы, исключая элементы главной диагонали, равны нулю, называется … … .

randomize;
for i:=1 to m do
begin
for j:=1 to n do
begin
a[i,j]:=random(100)-10;
end;
end;

Читайте также:
Рейтинг программ для конференций

Какую типовую задачу выполняет алгоритм?

А теперь сверимся: Приложение 1

program sred_n;
const m=3;
n= 4;
var
a: array[1..m,1..n] of integer;
i,j,n_pos_el:integer;
sred:real;
begin
for i:=1 to m do
for j:=1 to n do read(a[i,j]);
sred:=0;
for i:=1 to m do begin
n_pos_el:=0;
for j:=1 to n do begin
sred:=sred+a[i,j];
if a[i,j]>0 then inc(n_pos_el);
end;
writeln(‘V’,i,’-oi stroke’,n_pos_el,’polozitelnix elementov’);
end;
sred:=sred/m/n;
writeln(‘Srednee arifmeticheskoe:’,sred:6:2);
end.

program num_posit;
const m=3;
n=4;
var
a: array[1..m,1..n] of integer;
i,j,num:integer;
all_posit:boolean;
begin
randomize;
for i:=1 to m do
begin
for j:=1 to n do
begin
a[i,j]:=random(100)-10;
write(a[i,j]:4);
end;
writeln;
end;
num:=0;
for j:=1 to n do begin
all_posit:=true;
for i:=1 to m do
if a[i,j] 1.04.2008

  • Для учеников 1-11 классов и дошкольников
  • Бесплатные сертификаты учителям и участникам

Образовательная: познакомить учащихся с понятием двумерного массива данных, со способом описания двумерных массивов на ТР; обращения к элементам двумерных массивов; формировать навыки и умения составлять программы с использованием двумерных массивов.

Развивающая: учить анализировать и сравнивать, задавать вопросы.

Воспитательная: воспитывать аккуратность, внимательность, вежливость и дисциплинированность, бережное отношение к вычислительной технике.

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

Используемые на уроке средства ИКТ :

(ПК) учителя, мультимедийный проектор, интерактивная доска; ПК учащихся; презентация к уроку; карточки с практическим заданием.

Актуализация опорных знаний.

Изучение нового материала.

Подведение итогов урока.

Проверка готовности учащихся к уроку;

Объявление темы урока, цели и плана его проведения.

Актуализация опорных знаний (фронтальный опрос).

Давайте повторим основные понятия:

Что такое массив?
(ряд ячеек памяти, отведенных для хранения индексированной переменной или совокупность данных одного типа с общим для всех элементов именем).

Какие массивы вы знаете?
(одномерные, двумерные, трех мерные, четырехмерные)

Какие способы описания массива вы знаете?
(var ИмяМассива: array [НижняяГраница.. ВерхняяГраница] of Тип Элементов;или как типизированную константу const x : array [1..5] of integer =( l ,3,5,7,9);)

Какие способы формирования (заполнения) массивов вы знаете?
( с клавиатуры,присваиванием заданных значений, датчиком случайных чисел, помощью вычисления элементов)

Как обратиться к элементу массива?
(имя массив [ индекс элемента ] )

Что такое типы данных?

Какие типы данных вы знаете?

Как использовать команды цикла?

Какие циклы вы знаете?

Изучение нового материала

В практической деятельности человека часто используются таблицы и списки.

Список учеников в журнале;

Список среднесуточной температуры месяца;

Элементы списков и номера строк и столбцов всегда нумеруются.

В языках программирования подобные типы данных описываются с помощью массивов.

Массив — это набор однотипных данных, к которым можно обратиться с помощью единственного имени.

Каждое значение в массиве называется элементом.

Номер элемента в списке называется индексом.

Элементы представляют собой символьные или числовые значения, которые можно использовать в выражениях ЯП ПАСКАЛЬ.

Чтобы представить себе двумерный массив, вспомните зрительный зал кинотеатра.

hello_html_48433e2b.jpg

Название кинотеатра – имя массива.

Ряд, место — индексы.

Для того, чтобы использовать массив в программе, его нужно описать в разделе описаний:

(Запись в тетради)

Двумерным массивом называется массив, элементы котрого расположенны в виде прямоугольной таблицы .

Строка, столбец

Элемент массива обозначается по имени массива , с указанием № строки и № столбца .

Размерность определяется как количеством индексов в строке и столце. ( N  M )

Var имя_массива : array [размер ] of тип_элементов;

Имя массива выбираем по основным правилам имен идентификаторов.

Размер: [начальный_индекс . . конечный_индекс ]

[нач_индекс . . конечн_индекс , нач_индекс . . конечн_индекс ]

Name: array [1..30] of string;

Temperature : array [1..31] of real;

Kino : array [1..25, 1..40] of string;

Обращение к конкретному элементу массива осуществляется путем указания имени массива и индекса этого элемента в [ ]

Name [15], Temperature [10], Kino [5,6]

Элементы массивов используются в выражениях также, как и обычные переменные:

В качестве индексов массивов можно использовать переменные целого типа:

Name[i], Temperature[k], Kino[i,j]

Это свойство дает возможность обрабатывать массивы в циклах, в которых индекс массива является одновременно и счетчиком цикла.

Три этапа работы с массивами (запись в тетради):

1. Заполнение массива данными

2. Преобразование массива

(действия с элементами массива)

3. Вывод массива или

отдельных данных на экран

Рассмотреть ввод элементов массива.

Ввод элементов массива

writeln (‘Ввод эл-в массива A ’);

Читайте также:
Программа на Андроид для того чтобы печатать

вод и вывод двумерного массива, как и одномерного, производится поэлементно, т.е. используем – цикл, но формирование двумерного немного усложняется что необходимо испоьзовать вложенные циклы (один цикл для номера строки, другой – номер столюца)

И так еще один фрагмент на котором мы остановимся – это вывод элементов массива.

Вывод элементов массива

writeln (‘Вывод эл-в массива A ’);

Обратите внимание, для вывода элементов массива в виде таблицы, между вложенными циклами вставляем оператор, которы в данный момент будет формировать строчки, а пробел в апострофах – формирует столбцы.

Практическая работа. ТБ.

Практическая работа №7

Цель работы: сформировать понятие двумерного массива числового типа; владеть умениями обращения к элементам двумерного массива, ввода и вывода массива, составления алгоритмов обработки массивов; систематизировать и развить навыки решения типовых задач с использованием двумерных массивов.

Задание 1.

Составьте программу, которая запрашивает размеры двумерного массива, значения его элементов и выводит на очищенный экран получившийся массив.

Задание 2.

Дополните предыдущую программу так, чтобы вычислялось и выводилось на экран значение:

Цель: Получить общее представление о двумерном массиве и способе его формирования.

Развивать логику мышления, умения и навыки в программировании простых задач, познавательный интерес, навыки работы на компьютере, самоконтроль, умения конспектировать.

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

Знать: Понятие двумерный массив, размерность, индекс, описание массива, ввод и вывод массива.

Уметь: Формировать массив, решать задачи на обработку массива.

Оборудование: Презентация с заданиями, демонстрационная презентация, модуль.

План урока по информатике Двумерные массивы

План урока по информатике Двумерные массивы

  • Для учеников 1-11 классов и дошкольников
  • Бесплатные сертификаты учителям и участникам

Выберите документ из архива для просмотра:

Алгоритмизация и программирование 10 класс

Тема: Двумерные числовые массивы. Заполнение двумерных массивов по правилу.

образовательные; отработать навыки работы с элементами двумерного массива, научиться заполнять двумерные массивы по заданному правилу, научиться выводить зависимость между номером строки и номером столбца;

развивающие: создать условия для развития умений работать за ограниченный промежуток времени, развития навыков коллективной работы, развития навыков работы с текстом программы.

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

Тип урока : комбинированный.

Методы обучения: беседа, самостоятельная работа.

Формы организации: фронтальная работа, групповая работа, индивидуальная работа.

Оборудование: ПК, интерактивная доска, индивидуальные карточки с заданиями.

Актуализация знаний (Слайд 2)

Массивы, положение элементов в которых описывается двумя индексами, называются двумерными. Структура такого массива может быть представлена прямоугольной матрицей. Каждый элемент матрицы однозначно определяется указанием номера строки и столбца, номер строки – i, номер столбца – j.

Рассмотрим матрицу А размером 4 * 6 :

Каждый элемент имеет свой номер, который состоит из двух чисел – номера строки, в которой находится элемент, и номера столбца. Например, а[2,3] – это элемент, стоящий во второй строке и в третьем столбце.
Двумерный массив на языке Паскаль можно описать по-разному. Чтобы описать двумерный массив, надо определить какого типа его элементы, и каким образом они пронумерованы (какого типа его индекс).

Type имя типа >= array [1..maxN, 1..maxM] of тип элементов >;

Const N=4; M=6;
Type Mass2= array [1..N, 1..M] of integer;

Формирование двумерного массива можно осуществлять четырьмя способами:

ввод с клавиатуры,

через генератор случайных чисел,

по заданному правилу,

с помощью файла.

1) Формирование двумерного массива при помощи ввода с клавиатуры и алгоритм построчного вывода элементов матрицы.

Const N=10;M=10;
Type mass2= array [1..N,1..M] of integer;
Var A:Tmas; i,j:integer;
Begin

For i:=1 to 4 do
For j:=1 to 6 do
Read(A[i,j]);

For i:=1 to 4 do

2) Фрагмент программы формирования двумерного массива через генератор случайных чисел.

Постановка цели. Изучение нового материала

Какой способ заполнения массивов мы с вами еще не знаем?

Рассмотрим несколько задач на заполнение двумерного массива по некоторому закону. Учащиеся вместе с учителем обсуждают слайд презентации (3), после чего разбираются в уже имеющейся программе на Паскале.

  • Соотнесение числа и количества цифра 1 конспект
  • Жанровые особенности драмы конспект
  • Основные причины возникновения и распространения пожаров в зданиях конспект
  • Пропорции фигуры и прически конспект
  • Одновременный двухшажный ход план конспект

Источник: obrazovanie-gid.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru