Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
gerterker
1

Распечатайте в виде треугольной таблицы элементы матрицы, стоящие на местах, обозначенных цифрами 3 и 4

04.06.2013, 17:54. Показов 2342. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
var
   a:array[1..20,1..20] of integer;
   n,i,j:integer;   {объявление переменной}
//----------------Процедура ввода------------------------------  
procedure input;    {наименование процедуры}
          var  a:array[1..20,1..20] of integer;    {объявление массива}
          var i,j:integer;                         {объявление переменных}
begin
     readln(n);                             {ввод колличества строк и столбцов}
     for i:=1 to n do                       {запуск цикла по i (строки)}
         for j:=1 to n do readln(a[i,j]);   {заполнение матрицы по строкам/столбцам}
     for i:=1 to n do                       {запуск цикла по i (строки)}
         begin
              for j:=1 to n do       {запуск цикла по j (столбцы)}
              write(a[i,j]:3);      {вывод чисел на экран}
              writeln;              {выравнивание матрицы}
         end;
end;
//------Процедура вывода----------------------------------------  
procedure output;    {наименование процедуры}
          var a:array[0..20,0..20] of integer;       {объявление массива}
          var i,j:integer;                           {объявление переменных}
begin
     for i:=1 to n do                          {запуск цикла по n}
         begin
              for j:=1 to n-i+1 do                   {деление матрицы побочной диагональю}   
                  begin
                       write(a[i,j]:2, ' ');             {вывод чисел на экран}
                  end;
              writeln                                {выравнивание матрицы}
         end;
end;
//------Тело программы------------------------------------------
begin
     cls;                           {очистка экрана}
     input;                         {процедура ввода}
     output;                        {процедура вывода}
end.



условие
Условие задачи: Разделим квадратичную матрицу диагональю, соединяющую правый верхний элемент с левым нижним. Такую диагональ обычно называют «побочной».
4 4 4 4 3
4 4 4 3 5
4 4 3 5 5
4 3 5 5 5
3 5 5 5 5

Распечатайте в виде треугольной таблицы элементы матрицы, стоящие на местах, обозначенных цифрами 3 и 4.

На вход программе сначала подается значение n ≤ 20 – размер квадратной матрицы. В следующих n строках входных данных расположены сами элементы матрицы – натуральные числа, меньшие 100. Введите требуемые элементы, выравнивая их по столбцам.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.06.2013, 17:54
Ответы с готовыми решениями:

Распечатать в виде треугольной таблицы элементы матрицы стоящие выше побочной диагонали
Добрый день. Вообще не могу понять данную задачу. Не имею понятия как ее решить Разделим...

Упорядочить по возрастанию значений отдельно элементы, стоящие на четных местах, и элементы, стоящие на нечетных местах
#include<iostream> #include<algorithm> #include<vector> using namespace std; int main() { ...

Упорядочить по возрастанию отдельно элементы, стоящие на четных местах, и элементы, стоящие на нечетных местах
В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) сумму элементов...

Отсортировать по убыванию элементы, стоящие на четных местах, а элементы стоящие на нечетных местах - по возрастанию
Дан вектор размером N. Отсортировать по убыванию элементы, стоящие на четных местах, а элементы...

2
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
04.06.2013, 18:44 2
Убери это из процедур
Pascal
1
var a:array[0..20,0..20] of integer;       {îáúÿâëåíèå ìàññèâà}
Матрица же уже объявлена как глобальная переменная в начале програмы.
1
gerterker
04.06.2013, 18:52 3
да все, переделал... сделал с модулем..
Модуль:
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
unit massivkurs;
interface
 type
     matrix=array[1..20,1..20] of integer;       {объявление массива} 
procedure init(var a: matrix; n: integer);       {наименование процедуры, формальные параметры}
procedure output(a: matrix; n: integer);         {наименование процедуры, формальные параметры} 
implementation
//--------Процедура ввода--------------------------------------
procedure init(var a: matrix; n: integer);          {наименование процедуры, формальные параметры}
   var i,j: integer;               {объявление переменных}              
begin
  for i:=1 to n do                               {запуск цикла по i (строки)}
      for j:=1 to n do                           {запуск цикла по j (столбцы)}
          readln(a[i,j]);                        {заполнение матрицы по строкам/столбцам}
          for i:=1 to n do                       {запуск цикла по i (строки)}
         begin
              for j:=1 to n do      {запуск цикла по j (столбцы)}
              write(a[i,j]:3);      {вывод чисел на экран}
              writeln;              {выравнивание матрицы}
         end;
end;
//------Процедура вывода--------------------------------------- 
procedure output(a: matrix; n: integer);           {наименование процедуры, формальные параметры}
   var i,j: integer;               {объявление переменных} 
begin 
 for i:=1 to n do                          {запуск цикла по n}
     begin
          for j:=1 to n-i+1 do                   {деление матрицы побочной диагональю}   
              begin
                   write(a[i,j]:2, ' ');             {вывод чисел на экран}
              end;
          writeln                                {выравнивание матрицы}
          end;
     end;
end.
Программа:
Pascal
1
2
3
4
5
6
7
8
9
uses massivkurs;
var
   a:matrix;           {объявление массива}
   n:integer;          {объявление переменной}
begin
     readln(n);        {ввод колличества строк и столбцов}
     init(a,n);        {процедура ввода}
     output(a,n);      {процедура вывода}
end.
04.06.2013, 18:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.06.2013, 18:52
Помогаю со студенческими работами здесь

Сортировка массива: отдельно элементы, стоящие на четных местах и элементы, стоящие на нечетных местах
здравствуйте! задание: В одномерном массиве, состоящем из п целых элементов. Упорядочить по...

Элементы массива Х[i] стоящие на четных местах переписать в массив Y[i] а стоящие на нечетных местах в Z[i]
Элементы массива Х стоящие на четных местах переписать в массив Y а стоящие на нечетных местах в Z

Удвоить элементы линейной таблицы, стоящие на нечетных местах
Составление и отладка программ. №8. Удвоить элементы линейной таблицы, стоящие на нечетных местах.

Удалить все четные элементы матрицы, стоящие на нечетных местах
1. Дан двумерный массив размером m×n. Удалить все четные элементы, стоящие на нечет-ных местах. 2....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru