0 / 0 / 0
Регистрация: 04.11.2013
Сообщений: 28
1

Ввод вывод двумерного массива, и заменить половину главной диагонали нулями, вторую половину единицами

30.12.2013, 16:04. Показов 2423. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ввод вывод двумерного массива, и заменить половину главной диагонали нулями, вторую половину единицами. Я знаю только как заменить ВСЮ диагональ либо 0 либо 1. подскажите как заменить половину
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.12.2013, 16:04
Ответы с готовыми решениями:

Заменить половину диагонали матрицы на 0, а другую половину на 1
Program zamena; var i,j,n,m:real; mas:array of integer; pol:real; begin clrscr;

Дана матрица А(п*п). Заменить элементы главной диагонали нулями, а элемен-ты, стоящие над главной диагональю - единицами
Дана матрица А(п*п). Заменить элементы главной диагонали нулями, а элемен-ты, стоящие над главной...

Поменять местами первую и вторую половину массива
Помогите решить задачки!!! Дан массив B размера 2n. 1)Поменять местами первую и вторую половину...

Отсортировать первую половину массива по возрастанию, а вторую по убыванию
Дан массив А(N), содержащий 10 различных целых чисел. Необходимо отсортировать первую половину...

2
121 / 87 / 90
Регистрация: 30.12.2012
Сообщений: 511
30.12.2013, 18:37 2
Лучший ответ Сообщение было отмечено Krevetka как решение

Решение

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
const
  n = 6;
  m = 6;
 
var
  i, j: byte;
  mas: array[1..n, 1..m] of integer;
  pol: byte;
 
begin
  pol := trunc(m / 2);
  for i := 1 to n do
  begin
    for j := 1 to m do
    begin
      if (i = j) then
      begin
        if (j <= pol) then
          mas[i, j] := 0
        else mas[i, j] := 1;
      end
      else mas[i, j] := Random(0, 9);
      write(mas[i, j], ' ');
    end;
    writeln;
  end;
end.
0
1643 / 1092 / 487
Регистрация: 17.07.2012
Сообщений: 5,351
01.01.2014, 18:48 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
var a:array[1..10,1..10]of Integer;
i,j,n:Integer;
begin
Randomize;
Write('Порядок квадратной матрицы,n=');
Read(n);
Writeln('Исходная матрица:');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=Random(41)-20;
Write(a[i,j]:6);
end;
Writeln;
end;
for i:=1 to n do 
if i<=n div 2 then a[i,i]:=0 else a[i,i]:=1;
Writeln('Полученная матрица:');
for i:=1 to n do
begin
for j:=1 to n do Write(a[i,j]:6);
Writeln;
end;
Readln;
end.
Добавлено через 47 секунд
Цитата Сообщение от _Developer Посмотреть сообщение
Random(0, 9);
В Turbo Pascal в отличии от ABC эта строка работать не будет.
0
01.01.2014, 18:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.01.2014, 18:48
Помогаю со студенческими работами здесь

Отредактируйте первую половину массива по возрастанию, а вторую по убыванию
Здравствуйте! Помогите написать программу. Turbo Pascal. Дан массив А состоящий из 20 целых...

Массив: Отсортируйте первую половину массива по возрастанию, а вторую по убыванию...
Создайте массив,содержащий 20 различных целых чисел.Отсортируйте первую половину массива по...

Отсортировать первую половину массива по возрастанию, а вторую по убыванию(методом выбора)
Заполнить массив из 10 элементов случайными числами в интервалеи отсортировать первую половину по...

Дан одномерный массив целых чисел. Поменять местами первую и вторую половину элементов массива.
Дан одномерный массив целых чисел. Поменять местами первую и вторую половину элементов массива.


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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