Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2017, 17:29   #1
Kamelok
Пользователь
 
Регистрация: 19.11.2017
Сообщений: 36
По умолчанию Массивы.

В матрице поменять местами I-тую строку и J-тый столбец, на языке Pascal. Как это сделать?
Kamelok вне форума Ответить с цитированием
Старый 20.11.2017, 09:30   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

матрица должна быть размера NxN

Код:
for k:=1 to N do begin
  temp := matrix[i,k];
  matrix[i,k] := matrix[k,j];
  matrix[k,j] := temp
end;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.11.2017, 18:11   #3
Kamelok
Пользователь
 
Регистрация: 19.11.2017
Сообщений: 36
По умолчанию

Что то я сильно туплю сижу уже неделю, может не надо было идти на программиста.
Я без понятия где ошибаюсь все время.
var
Код:
i,j,n,k, temp : integer; 
a: array [1..10,1..10] of integer; 
begin 
writeln('Введите размер квадратной матрицы n- '); 
readln(n); 
writeln('Введите i-'); 
readln(i);
writeln('Введите j-'); 
readln(j);
randomize; 
for i:=1 to n do 
begin 
for j:=1 to n do 
begin 
a[i,j] := random(30) + 1; 
write(a[i,j] : 3); 
end; 
writeln; 
end;
for k:=1 to N do begin
  temp := a[i,k];
  a[i,k] := a[k,j];
  a[k,j] := temp
end;
writeln; 
writeln('Новая матрица'); 
writeln; 
for i:= 1 to n do 
begin 
for j:= 1 to n do 
write(a[i,j]:3); 
writeln; 
end; 
end.

Последний раз редактировалось Вадим Мошев; 08.12.2017 в 05:41.
Kamelok вне форума Ответить с цитированием
Старый 26.11.2017, 18:32   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Вы считали в переменные i и j номера, а потом тут же использовали эти переменные в качестве счетчиков цикла, тем самым изменили их значения.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 26.11.2017, 20:36   #5
СтудПом
Форумчанин
 
Регистрация: 08.11.2017
Сообщений: 347
По умолчанию Именование переменных

Не сразу даже понял
Переставьте запрос номеров строк - после цикла формирования матрицы.
Код:
var 
  i,j,n,k, temp : integer; 
  a: array [1..10,1..10] of integer; 
begin 
  write('Введите размер квадратной матрицы n- '); readln(n); 
  for i:=1 to n do 
  begin 
    for j:=1 to n do 
    begin 
      a[i,j] := i*10 + j; 
      write(a[i,j] : 3); 
    end; 
    writeln; 
  end;
  write('Введите i-'); readln(i);
  write('Введите j-'); readln(j);
  for k:=1 to N do
  begin
      temp := a[i,k];
    a[i,k] := a[k,j];
    a[k,j] := temp
  end;
  writeln; 
  writeln('Новая матрица'); 
  writeln; 
  for i:= 1 to n do 
  begin 
    for j:= 1 to n do 
    write(a[i,j]:3); 
    writeln; 
   end
end.
-И лучше, так не делать. Каждая переменная должна иметь уникальное назначение. Исключение - счётчики циклов.

Последний раз редактировалось СтудПом; 26.11.2017 в 20:39.
СтудПом вне форума Ответить с цитированием
Старый 07.12.2017, 22:35   #6
Kamelok
Пользователь
 
Регистрация: 19.11.2017
Сообщений: 36
По умолчанию

Спасибо
Kamelok вне форума Ответить с цитированием
Старый 07.12.2017, 23:05   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Цитата:
Сообщение от Kamelok Посмотреть сообщение
Что то я сильно туплю сижу уже неделю, может не надо было идти на программиста.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
написать программу массивы (C++) - Даны два массива, скопировать эти массивы в 3-й результирующий (размером 10 элементов) так, что Саша1990 Помощь студентам 1 02.02.2015 16:03
Одномерные массивы, двумерные массивы, строки Sand093 C++ Builder 11 20.05.2012 21:48
Двумерные массивы(матрица) 2)Строковые массивы(строки): 3)Структуры nuriyat Помощь студентам 1 21.01.2012 16:16
Двумерные массивы(массивы указателей на массивы) krytishka99 Помощь студентам 1 29.12.2011 19:51
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12