Задача 1

Задача 2

Задача 3

Задача 4

Задача 5

Задача 6

Задача 7

Задача 8

Задача 9

Задача 10

Задача 11

Задача 12

Задача 13

Задача 14

Задача 15

Задача 16

Задача 17

Задача 18

Задача 19

Задача 20

Задача 21

Задача 22

Задача 23

Задача 24

Задача 25

Задача 26

Задача 27

Задача 28

Задача 29

Задача 30
Массивы

Задача 7.


      
Условие задачи    Алгоритм работы    Листинг программы    Набор тестов   

Условие задачи

Напишите программу для выполнения трех двумерных массивов и последующего их вывода.

Первый массив, размерностью n x m, заполняется данными, вводимыми с клавиатуры, так что заполнение ведется по строкам от последних элементов строки к первым.

Второй массив, размерностью n x n, заполняется так: элементы, лежащие ниже главной диагонали, являются случайными числами из интервала [-17;36], а лежащие на главной диагонали и выше, являются случайными числами из интервала [100;10000].

Третий массив, размерностью n x n, заполняется для произвольного n также, как для n=5.

В последнем случае необходимо:

  1. описать словами построение массива для двух разных n;
  2. написать программу;
  3. привести трассировку для n=4.
      
Условие задачи    Алгоритм работы    Листинг программы    Набор тестов   

Алгоритм работы

1 способ. Заполнения массива организовано с помощью двух вложенных циклов с параметром. Так как заполнение массива ведется по строкам от последних элементов строки к первым, то начальному значению внутреннего цикла присваивается m – количество столбцов массива. Работа цикла продолжается до тех пор, пока начальное значение не будет равно единице. При этом каждый раз при обращении к циклу начальное значение уменьшается на единицу.

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

3 способ. Заполнение массива начинаем с первого элемента последней строки. Элементы последней строки вводятся по принципу <предыдущий элемент> + <порядковый номер столбца>. Первому элемент равен единице (1). Все последующие элемент, начиная с (n-1) строчки, где n – порядок матрицы, вычисляются по принципу: если элемент лежит выше главной диагонали, то присваиваем значение ноль (0), иначе A[i][j]=A[i+1][j+1]-1, где i – номер текущей строки массива А, j – номер текущего столбца массива A.

      
Условие задачи    Алгоритм работы    Листинг программы    Набор тестов   

Листинг программы

  • 1 способ

  • 2 способ
  • 3 способ
      
Условие задачи    Алгоритм работы    Листинг программы    Набор тестов   

Набор тестов к программе

  • 1 способ

    1.    Vvedite kolichestvo strok massiva: 4
      	Vvedite kolichestvo stolbcov massiva: 5
      	Vvedite A[1,5] 1
      	Vvedite A[1,4] 2
      	Vvedite A[1,3] 3
      	Vvedite A[1,2] 4
      	Vvedite A[1,1] 5
      
      	Vvedite A[2,5] 6
      	Vvedite A[2,4] 4
      	Vvedite A[2,3] 0
      	Vvedite A[2,2] -4
      	Vvedite A[2,1] 5
      
      	Vvedite A[3,5] 6
      	Vvedite A[3,4] 0
      	Vvedite A[3,3] -12
      	Vvedite A[3,2] 4
      	Vvedite A[3,1] 5
      
      	Vvedite A[4,5] 5
      	Vvedite A[4,4] 4
      	Vvedite A[4,3] -5
      	Vvedite A[4,2] 6
      	Vvedite A[4,1] -8
      
      	    5    4    3    2    1
      	    5   -4    0    4    6
      	    5    4  -12    0    6
      	   -8    6   -5    4    5
      
      
      

    2.    Vvedite kolichestvo strok massiva: 3
      	Vvedite kolichestvo stolbcov massiva: 4
      	Vvedite A[1,4] 1
      	Vvedite A[1,3] 2
      	Vvedite A[1,2] 0
      	Vvedite A[1,1] -3
      
      	Vvedite A[2,4] 4
      	Vvedite A[2,3] 5
      	Vvedite A[2,2] 7
      	Vvedite A[2,1] 4
      
      	Vvedite A[3,4] -8
      	Vvedite A[3,3] 6
      	Vvedite A[3,2] -1
      	Vvedite A[3,1] 11
      
      	   -3    0    2    1
      	    4    7    5    4
      	   11   -1    6   -8
      
  • 2 способ

    1.    Vvedite poryadok matrici: 4
      
      	   5557    303   5254   8196
      	     -4   7337   9264   3054
      	      8     14   1746   3180
      	      5     -1     12   6838
      
      
      
      

    2.    Vvedite poryadok matrici: 5
      
      	   6297   9843   8437   7065   6299
      	     10   1646   9171   2425   5990
      	     -1      1   2691   5880   8790
      	    -17      0      4   6962    652
      	     -9      3     16    -16   8102
      
      
  • 3 способ

    1.    Vvedite poryadok matrici: 4
      
      	    7    0    0    0
      	    4    8    0    0
      	    2    5    9    0
      	    1    3    6   10
      
      
      

    2.    Vvedite poryadok matrici: 5
      
      	   11    0    0    0    0
      	    7   12    0    0    0
      	    4    8   13    0    0
      	    2    5    9   14    0
      	    1    3    6   10   15
      
      

Автор решения: Фролова Елена

группа: 121Ми

год: 2008

Автор задачи: Гладков В.П. Курс лабораторных работ по программированию: Учебное пособие для специальностей электротехнического факультета ПГТУ/ Перм.гос.техн.ун-т.-Пермь,1998.-153с.

Назад

Вперед


Рейтинг ресурсов УралWeb

 

© Оформитель: Фёдорова Т.А., 2009
Сайт создан в системе uCoz