Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003




НазваниеИнформатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003
страница8/12
Дата11.11.2012
Размер0.97 Mb.
ТипМетодические указания
1   ...   4   5   6   7   8   9   10   11   12

Удаление и вставка строк и столбцов



Задача 19. Удалить k- ю строку из массива.


Реализация на Паскале:



{ Сдвигаем все строки, начиная с k+1-й, на одну позицию вверх }

for i := k + 1 to n do

{ Переписываем элементы i-й строки в строку i – 1 }

for j := 1 to m do

a[i - 1, j] := a[i, j];


{ Уменьшаем количество используемых строк }

n := n – 1;



Реализация на Си:



// Сдвигаем все строки, начиная с k+1-й, на одну позицию вверх

for (i = k + 1; i < n; i++)

// Переписываем элементы i-ой строки в строку i - 1

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

a[i – 1][j] = a[i][j];


//Уменьшаем количество используемых строк

n--;




Задача 20. Вставить перед k -м столбцом столбец, содержащий нулевые элементы.


Реализация на Паскале:



{ Сдвигаем столбцы, начиная с последнего и заканчивая k- м,

на одну позицию вправо }

for j := m downto k do

{ Переписываем элементы j-го столбца в столбец j + 1 }

for i := 1 to n do

a[i, j + 1] := a[i, j];


{ Увеличиваем количество используемых столбцов }

m := m + 1;


{ Заполнение нулем k-го столбца }

for i := 1 to n do

a[i, k] := 0;



Реализация на Си:



// Сдвигаем столбцы, начиная с последнего и заканчивая k-м,

// на одну позицию вправо

for (j = m - 1; j >= k; j--)

// Переписываем элементы j-го столбца в столбец j + 1

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

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


// Увеличиваем количество используемых столбцов

m++;


// Заполнение нулем k-го столбца

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

a[i][k] = 0;



Обработка квадратного массива



При использовании квадратного массива размером N x N элементов часто упоминаются диагонали матрицы. Диагональ, состоящая из элементов a[1,1], a[2,2], …,a[i,i], …, a[N,N], называется главной (основной). Диагональ, состоящая из элементов a[1,N], a[2,N-1], …,a[i,N-i+1], …, a[N,1], называется вспомогательной.

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





J=1

J=2

J=3

J=4










J=1

J=2

J=3

J=4

I=1

*
















I=1










*



I=4










*







I=4

*












Задача 21: Обнулить элементы главной диагонали.


Фрагмент программы на Паскале:



for i := 1 to n do

a[i, i] := 0;



Фрагмент программы на Си:



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

a[i][i] = 0;




Задача 22: Обнулить элементы выше главной диагонали.

Первый вариант – сканировать все элементы, но обнулять только те, которые стоят выше главной диагонали:


Фрагмент программы на Паскале:



for i := 1 to n do

for j := 1 to n do

if i < j then { Условие того, что элемент стоит

выше главной диагонали }

a[i,j] := 0;



Фрагмент программы на Си:



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

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

if (i < j) // Условие того, что элемент стоит

// выше главной диагонали}

a[i][j] = 0;




Второй вариант – сканировать только те элементы, которые стоят выше главной диагонали:


Фрагмент программы на Паскале:



for i := 1 to n - 1 do

for j := i + 1 to n do

a[i,j] := 0;



Фрагмент программы на Си:



for (i = 0; j < n - 1; j++)

for (j = i + 1; j < n; j++)

a[i][j] = 0;




Задача 23: Подсчитать сумму элементов, стоящих на вспомогательной диагонали.


Фрагмент программы на Паскале:



s := 0;

for i := 1 to n do

s := s + a[ i, n - i + 1];



Фрагмент программы на Си:



s = 0;

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

s += a[i][n - i - 1];



В Си элементы, стоящие на вспомогательной диагонали имеют индексы a[0][n-1], a[1][n-2], …, a[i][n – i - 1], a[n-1][0].

1   ...   4   5   6   7   8   9   10   11   12

Похожие:

Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 iconРабочая программа Дисциплины “Узлы и устройства эвм”
Для подготовки дипломированных специалистов по направлению 654600 – «Информатика и вычислительная техника» по специальности 220100...
Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 iconМикропроцессорные системы для подготовки
Для подготовки дипломированных специалистов по направлению 654600 – “Информатика и вычислительная техника” по специальности 220100...
Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 iconКомпьютерная графика для подготовки
Для подготовки дипломированных специалистов по направлению 654600 “Информатика и вычислительная техника” по специальности 220100...
Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 icon«Утверждаю»: Министерство образования и науки Российской Федерации Ректор
Направление подготовки: 230100 «Информатика и вычислительная техника Профиль подготовки: «Вычислительные машины, комплексы, системы...
Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 iconРабочая программа составлена на основании Государственного стандарта по специальности 220100 «Вычислительные машины, комплексы, системы и сети»
Рабочая программа составлена на основании Государственного стандарта по специальности 220100 «Вычислительные машины, комплексы, системы...
Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 iconУчебно-методический комплекс по дисциплине Операционные системы
«Вычислительные машины, комплексы, системы и сети» на кафедре «Вычислительная техника» факультета информационных систем и технологий...
Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 iconПрограмма государственного экзамена по специальности 220100 “Вычислительные машины, комплексы, системы и сети”

Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 iconМетодические указания для студентов направления подготовки 654600 Омск 2002
В методических указаниях по дипломному проектированию предназначены для студентов специальности 22 01 00 «Вычислительные машины,...
Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 iconРабочая программа учебной дисциплины «микропроцессорные системы» для специальности: 230101 «Вычислительные машины, комплексы, системы и сети» Заочная форма обучения
«Вычислительные машины, комплексы, системы и сети», изложенных в Государственном образовательном стандарте высшего профессионального...
Информатика и вычислительная техника” и специальностей 220100 “Вычислительные машины, комплексы, системы и сети” и 021800 “Теоретическая и прикладная лингвистика” Ульяновск 2003 iconМетодические указания и контрольные задания Для студентов специальности 230101 «Вычислительные машины, комплексы, системы и сети»
«Вычислительные машины, комплексы, системы и сети» заоч формы обучения / Федер агентство по образованию, Воронеж государственный...
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница