Задача: сформировать и вывести на экран двумерный массив оценок ряда учеников (их количество произвольно) по четырём школьным предметам. Оценки считать.

Презентация:



Advertisements
Похожие презентации
Задача: сформировать и вывести на экран двумерный массив оценок ряда учеников (их количество произвольно) по четырём школьным предметам. Оценки считать.
Advertisements

Двумерные массивы. Двумерным массивом называется совокупность данных, каждое значение которых, зависит от его положения в строке и в столбце.
Подведение итогов г. Н.Новгород школа 58. Блиц-опрос! Что такое двумерный массив? Как его описать? Как заполнить двумерный массив? Приведите примеры заполнения.
Опр-е: Массив – это набор переменных одного типа, имеющее одно общее имя. Это имя называется именем массива (оно задаётся по тем же правилам, что и имя.
Двумерные массивы. В математике часто используют многомерные массивы, т.е. массивы массивов. Особенно широкое распространение получили двумерные массивы.
Массивы Теоретические сведения. Примеры решения задач. Задания для самостоятельного выполнения.
Массивы Теоретические сведения. Примеры решения задач. Задания для самостоятельного выполнения.
Двумерные массивы. В двумерном массиве каждый элемент фиксируется номером строки и столбца, на пересечении которых он расположен. Положение элемента в.
ВВОД 2. ЕСЛИ 3. СЛЕДУЮЩИЙ 4. МАССИВ 5. ВЫВОД.
Вопросы для повторения: Что называется массивом? По каким правилам задаётся имя массива? Как называется номер элемента массива ? Как описываются массивы?
Табличная организация данных Массивы. Для организации таблиц в программах используют массивы. Массив - упорядоченная последовательность величин, обозначенных.
Двумерный массив Учитель информатики МБОУ «Марковская СОШ» Репникова С.А.
В программах на языке Basic можно пользоваться таблицами. Таблицы в программировании называются массивами.
Основы программирования на Бейсике Массивы. Задание: Найти все 3-хзначные числа, заканчивающихся на 2, 4, 8 и делящихся на 6. Ответ: CLS FOR I=100 TO.
Двумерные массивы Матрица. Содержание: Повторение Двумерный массив Диагональ матрицы Действия со строками и столбцами матрицы Действия со строками и столбцами.
Двумерные массивы. Массивы, положение элементов в которых описывается двумя индексами, называются двумерными. Их можно представить в виде прямоугольной.
Двумерные массивы. Массивы Двумерный массив (матрица) – это массивы, положение элементов в которых описывается двумя индексами или прямоугольная таблица,
Часть 1 В математике таблицы чисел, состоящие из строк и столбцов называются матрицами и записываются в круглых скобках. Двумерный массив. Матрицы 1.
Тематический блок «Программирование» ЕГЭ-2015 Задания 19, 20, 21, 25.
1 Двумерные массивы Учитель информатики высшей категории ГБОУСОШ 398 г. Москвы Темишева людмила степановна Типовые алгоритмы A( I,J ) СТРОКИ СТОЛБЦЫ.
Транксрипт:

Задача: сформировать и вывести на экран двумерный массив оценок ряда учеников (их количество произвольно) по четырём школьным предметам. Оценки считать целыми случайными числами от 1 до 5. Сосчитать средний балл успеваемости всех учеников по всем предметам. Математика ФизикаИнформатика Литература Петров 4354 Иванов 5453 Петров 5544 Сидоров 3233

Схематично двумерный массив А(m,n) можно представить в виде следующей матрицы: a 11 a 12 a 13 …a 1n a 21 a 22 a 23 …a 2n …………… a m1 a m2 a m3 …a mn Где m – количество строк, n – количество столбцов Действительно, таблица очень напоминает зрительный зал, где m – количество рядов, а n – количество мест в ряду. Если всю матрицу обозначить одним именем, например А, то каждый элемент матрицы будет иметь два индекса – А(i,j), где первый индекс i обозначает номер строки (i=1…m), второй индекс j - номер столбца (j=1…n). Такую матрицу можно описать следующим образом: DIM А(m,n) При решении задач с использованием двумерных массивов во всех случаях (кроме некоторых частных) организуются вложенные циклы для изменения обоих индексов элемента массива.

В языке Бейсик существует краткая форма описания массива. Определите, пожалуйста, размер, размерность и тип массивов, определённых следующим образом: DIM A(32), ST$(20,10), R4%(2,4,5) Ответ: Массивы:размерность размер тип A132Вещественный с одинарной точностью ST2200 символьный R4340 целый

2. Заполнение двумерного массива 1. по строке: 2. по столбцу: For i=1 to m For j=1 to n For j=1 to n For i=1 to m a(i,j)=Int(Rnd*99+1) Next j, i Next i, j а 11 а 12 а 12 а 13 а 13 а 14 а 21 а а 11 а 12 а 12.. а 21 а а 31 а 31...

3. Печать содержимого на экран: For i=1 to m For j:=1 to n Вывод элементов одной строки матрицы в текущей Locate,3*j: Print a(i,j); строке и в столбцах с номерами, Next j кратными трём Print переход на следующую строку экрана Next i где: a - имя массива; i - индекс строки; j - индекс столбца; m - количество строк; n - количество столбцов. Почему вывод каждого столбца здесь осуществляется в позициях, номера которых кратны трём? А можно – четырём? Зачем это?

Что изменится в алгоритме, если надо будет суммировать элементы строки с номером k? 4. Вычисление суммы элементов отдельной строки, столбца. Дана матрица MxN. Найти сумму элементов столбца с номером k. Print Введите элементы массива For i=1 to m For j=1 to n Input a(i,j) Next j, i For i=1 to m Вывод значений массива For j=1 to n Locate,4*j: Print a(i,j); Next j Print Next i s=0: Input Введите номер столбца,k For i=1 to m: s=s+a(i,k): Next Print Сумма элементов ;k;-го столбца = ;s

5. Вычисление суммы элементов всего двумерного массива. S=0 for i=1 to m for j=1 to n S=S+a(i,j) Next j, i 6. Поиск и вывод максимального элемента каждой строки: For i=1 to m max=a(i,1): nmax=1 For j=1 to n if a(i,j)>max then max=a(i,j): nmax=j Next j Print max строки ;i;=;max; в столбце ;nmax Next i Для чего сумму S до цикла обнулили? А если надо искать произведение?

7. Поиск и вывод минимального элемента каждого столбца: For j=1 to n min=a(1,j): nmin=1 For i=1 to m if a(i,j)<min then min=a(i,j): nmin=i Next i Print min столбца ;j;=;min; в строке ;nmin Next j 8. Поиск минимального элемента и его индексов для всего массива Min=a(1,1): ni=1: nj=1 For i=1 to m For j=1 to n if a(i,j)<min then min=a(i,j): ni=i: nj=j Next j,i ? min=;min, в строке ;ni, в столбце ;nj

9. Дан двумерный массив А(5,6). В каждой строке найти среднее арифметическое CLS: Dim A(5,6), SR(5) Randomize Timer For I = 1 То 5 For J = 1 То 6 A(I, J) = Int(Rnd * ) Next J, I For I=1 To 5 S=0 For J=1 to 6 S=S+A(I,J) Next J SR(I)=S/6 Next I For I = 1 To 5 For J = 1 To 6 Locate, 4 * J: Print A(I, J ) ; Next J Locate, 4 * J: Print SR(I) Next I

10. Дан двумерный массив A(N,M). Сформировать массив B(N,M), где a(i,j)2, если i- нечётное; b(I,J)= a(i.j), если i - чётное; Cls: Input Введите размеры массива m и n,M,N Dim a(M,N), b(M,N): Randomize Timer For i=1 to M Заполнение и For j=1 to N вывод элементов массива a(i,j)=Int(Rnd*99+1) Locate,4*j: Print a(i,j); Next j Print Next i Print For i=1 to M If i/2= i\2 Then For j=1 to N: b(i,j)=sqr(a(i,j)): Next j Else For j=1 to N: b(i,j)=a(i,j)^2: Next j End If Next i For i=1 to M For j=1 to N Locate,4*j: Print b(i,j); Next j Print Next i

Мы с вами рассмотрели типичные примеры обработки прямоугольных матриц (M*N). Если M=N, то матрица называется квадратной (N*N). a 11 a 12 a 13 a 14 a 21 a 22 a 23 a 24 a 31 a 32 a 33 a 34 a 41 a 42 a 43 a 44 Для квадратных матриц можно выделить: Главная диагональ - элементы a 11, a 22, a 33, a 44 - индексы элементов, расположенных на главнойой диагонали равны (i=j) Пример: Найти сумму элементов главнойой диагонали: S=0 for i=1 to n: S=S+a(i,i): next Побочная диагональ - элементы a 41, a 32, a 23, a 14 (j=n+1-i) Пример: Найти минимальный элемент побочной диагонали: min=a(1,n) for i=1 to n if a(i,n+1-i)<min then min=a(i,n+1-i) next

Верхняя треугольная матрица (элементы, расположенные над главнойой диагональю ненулевые (i<j); (рис 1) Нижняя треугольная матрица (элементы, расположенные под главнойой диагональю ненулевые (i>j); (рис 2) 0a 12 a 13 a 14 00a 23 a a a a 31 a a 41 a 42 a 43 0 (рис 1) (рис 2)

12. Задана числовая таблица размерности n на n. Заменить все отрицатьельные элементы этой таблицы на минимальный элемент главнойой диагонали. CLS: INPUT Введите размер таблицы:, n DIM a(n,n) REM формирование матрицы FOR i = 1 TO n FOR j = 1 TO n a(I,j)= INT(RND*11- 5) NEXT j,i REM вывод матрицы FOR i = 1 TO n FOR j = 1 TO n PRINT a(i, j); NEXT j PRINT NEXT i REM поиск мин. элем. главной. диагонали MIN = a(1,1) FOR i = 1 TO n IF MIN > a( I,I) THEN MIN = a(I,I) NEXT I REM замена отрицать. элементов на MIN FOR i = 1 TO n FOR j = 1 TO n IF a(I,j) < 0 THEN a(I,j)=MIN NEXT j,i REM вывод матрицы FOR i = 1 TO n FOR j = 1 TO n PRINT a(i, j); NEXT j PRINT NEXT i