Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Pascal Шифрование https://www.cyberforum.ru/ pascal/ thread133137.html
Может кто помочь с этими Тремя заданиями? Буду очень благодарен )) http://i049.***********/1005/25/28908810fc11.jpg Добавлено через 7 часов 55 минут Буду рад помощи :)
Pascal Записи и процедуры.
Помогите, пожайлуста, решить 2 задачи на паскале. Заранее ОЧЕНЬ благодарен! 1)Эта зана тему "Записи". Даны результаты переписи населения, которые хранятся в памяти ЭВМ. Напечатать фамилии,...
Pascal Составить блок-схемы по готовой программе
program zad; uses crt; type m=array of integer; procedure vvod; var mas:array of integer; j,max,kol:integer; begin
Pascal Составить программу, чтобы вышел логотип по условию можете помогти скласти програму, яка б в графічному режимі виводила логотим вигаданий, що має містити назву фірми, кілька геометричних фігур та ліній різних кольорів, зізними типами заливки і... https://www.cyberforum.ru/ pascal/ thread133128.html
Pascal В библиотеке для каждого заказывающего книгу читателя заполняется карточка: фамилия, дата заказа, дата выдачи книги. Определить: 1) самый маленький ср https://www.cyberforum.ru/ pascal/ thread133127.html
В библиотеке для каждого заказывающего книгу читателя заполняется карточка: фамилия, дата заказа, дата выдачи книги. Определить: 1) самый маленький срок, за который нашли книгу; 2) сколько заказов...
Pascal Даны массив А из n элементов и число K. Переставить элементы массива А так, чтобы все элементы со значением, большим, чем число K, попали в первую пол
Даны массив А из n элементов и число K. Переставить элементы массива А так, чтобы все элементы со значением, большим, чем число K, попали в первую половину массива, а остальные – во вторую.
Pascal Найти среднее значение сумм элементов нечетных столбцов под главной диагональю.
Найти среднее значение сумм элементов нечетных столбцов под главной диагональю. Подскажите хотя бы примерно
Pascal Определить парными или не парными э два числа a и b Определить парными или не парными э два числа a и b. https://www.cyberforum.ru/ pascal/ thread133109.html
Pascal Обработка массивов переменной длины https://www.cyberforum.ru/ pascal/ thread133108.html
Методика выполнения работы. Дана матрица, состоящая из n строк и n столбцов или одномерные массивы из n элементов каждый. Согласно предложенному варианту задания, разработать схему алгоритма и...
Pascal Разветвляющиеся вычислительные процессы Не могу решить задачу помогите пожалуйста https://www.cyberforum.ru/ pascal/ thread133107.html
S9
Волшебник
654 / 257 / 88
Регистрация: 18.12.2010
Сообщений: 545
02.06.2011, 08:55 0

Стандартные операции с массивами (матрицами)

02.06.2011, 08:55. Просмотров 178093. Ответов 36
Метки (Все метки)

Ответ


Если кому надо, то вот два варианта заполнения двухмерного массива.
Этот код заполняет как на картинке 1
Pascal
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Const
    N = 5;
Var
    A:Array[1..20,1..20] Of Integer;
    k,x,y,Num:integer;
  {проверка диапазона}
  
Procedure Check(Var i,j:Integer);
    Begin
      If i = 0 Then Inc(i)
        Else
          If i > N Then
            Begin
              i:= N;
              j:= j+2;
            End;
    End;
    
Begin
    {начальные значиения}
    x:=1;
    y:=1;
    k:=1;
    {перебираем все номера}
    For Num:=1 To N*N Do
        Begin
            A[x,y]:=Num;
            {следующие координаты}
            x:=x + k;
            y:=y - k;
        {сдедующая строка эквивалентна 
        if (x = 0)Or(y = 0)Or(x > N)Or(y > N) Then k:=-k;}
        k:=k*(1 - 2*Ord((x = 0)Or(y = 0)Or(x > N)Or(y > N)));
        {корректируем координаты}
        If Odd(N) Then
            Begin
                Check(x,y);
                Check(y,x);
            End
                Else
            Begin
                Check(y,x);
                Check(x,y);
            End;
        End;{выводим результат}
    For x:=1 To N Do
        Begin
            For y:=1 To N Do
                Write(a[x,y]:3);
            WriteLn;
        End;
    ReadLn;
End.
А этот, как на картинке 2

Pascal
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
31
32
33
Var A:Array[1..100,1..100] Of Integer;
    n,i,j:Integer;
    
Begin
Write('n = ');
ReadLn(n);
If n Mod 2 <> 0 Then {для матриц нечетной размерности}
For i:=1 To n Do
    Begin
        For j:=1 To n Do
        Begin
            If i Mod 2 <> 0 Then {для нечетных строк}
                A[i,j]:=n*(n - i) + j
            Else A[i,j]:=n*(n - i + 1) - j + 1; {для четных строк}
                Write(a[i,j]:3);
        End;
        WriteLn;
    End
Else 
    If n Mod 2 = 0 Then  {для матриц четной размерности}
For i:=1 To n Do
    Begin
    For j:=1 To n Do
        Begin
            If i Mod 2 <> 0 Then  { для нечетных строк } 
                A[i,j]:=n*(n - i + 1) - j + 1
            Else a[i,j]:=n*(n - i) + j;  { для четных строк }
                Write(a[i,j]:3);
        End;
        WriteLn;
    End;
ReadLn;
End.


Вернуться к обсуждению:
Стандартные операции с массивами (матрицами)
6
Изображения
  
Вложения
Тип файла: rar Solution1.rar (26.2 Кб, 102 просмотров)
Тип файла: rar Solution2.rar (14.1 Кб, 73 просмотров)
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.06.2011, 08:55

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

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

Стандартные алгоритмы работы с одномерными массивами
1. Ввод массива целых чисел. 2. Вывод массива в строку. 3. Найти минимальный элемент. Найти...

Работа с массивами и матрицами
1.Реализуйте проект «Массив». Кнопка «Заполнить» формирует массив из десяти случайных целых чисел в...

Как работать с массивами и матрицами?
Как работать с массивами и матрицами?

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.