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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.11.2010, 20:27   #1
Асик
Новичок
Джуниор
 
Регистрация: 28.11.2010
Сообщений: 5
По умолчанию не могу найти ошибку

программа должна менять 1 и предпоследнюю строки местами.....ошибка в том, что что-то недописал...непонимаю че еще надо.....говорят что не меняет...(((

Паскаль

var a:array[1..10,1..10] of integer;
s:integer;
i,j:integer;
begin
for i:=1 to n do begin
for j:=1 to n do begin
readln(a[i,j]);
for j:=1 to n do bein
s:=a[1,j];
a[1,j]:=a[n-1,j];
a[n-1,j]:=s;

Последний раз редактировалось Асик; 30.11.2010 в 20:46.
Асик вне форума Ответить с цитированием
Старый 30.11.2010, 21:11   #2
rubius2008
Форумчанин
 
Регистрация: 19.03.2010
Сообщений: 409
По умолчанию

1. Переменная n - не зарегистрирована и ее значение не определено.
2. Надо end для каждого begin поставить.
3. И наверно надо вывести матрицу после перестановок, чтоб видно было.
Есть вопросы, пишите в ЛС.
rubius2008 вне форума Ответить с цитированием
Старый 30.11.2010, 21:25   #3
Асик
Новичок
Джуниор
 
Регистрация: 28.11.2010
Сообщений: 5
По умолчанию

ну n же можно в array вместо "10" написать?
вывод тоже допишу...проблема в том, что он строки не меняет...мне сказали что там еще что то дописать надо...((( не понимааю... вроде другие программы смотрел алгоритм примерно такой же...
Асик вне форума Ответить с цитированием
Старый 30.11.2010, 21:27   #4
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

выложи полный код! Тогда и посмотрим!
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 30.11.2010, 21:39   #5
rubius2008
Форумчанин
 
Регистрация: 19.03.2010
Сообщений: 409
По умолчанию

Цитата:
Сообщение от Асик Посмотреть сообщение
ну n же можно в array вместо "10" написать?
вывод тоже допишу...проблема в том, что он строки не меняет...мне сказали что там еще что то дописать надо...((( не понимааю... вроде другие программы смотрел алгоритм примерно такой же...
Тогда n в константах надо регистрировать.
Скорей всего проблема с расставленными end-ами. Не там, где надо.
Предоставь весь код программы, полностью, тогда сразу будет все понятно.
Есть вопросы, пишите в ЛС.
rubius2008 вне форума Ответить с цитированием
Старый 30.11.2010, 22:14   #6
Асик
Новичок
Джуниор
 
Регистрация: 28.11.2010
Сообщений: 5
По умолчанию

program Project345345;

{$APPTYPE CONSOLE}

uses
SysUtils;
const n=4;
var a:array[1..n,1..n]of integer;
b:array[1..n]of integer;
i,j:integer;
begin
randomize;
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=random(101)-50;
write(a[i,j]:5);
end;
writeln;
end;
writeln('izmenennaya:');
for i:=1 to n do begin
for j:=1 to n do
b[i]:=a[1,j];
a[1,j]:=a[n-1,j];
a[n-1,j]:=b[i];
write(a[i,j]:5);
end;
readln;
end.
Асик вне форума Ответить с цитированием
Старый 30.11.2010, 22:14   #7
Асик
Новичок
Джуниор
 
Регистрация: 28.11.2010
Сообщений: 5
По умолчанию

это переделал щас...все равно не работает..
Асик вне форума Ответить с цитированием
Старый 30.11.2010, 23:04   #8
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Код:
program Project345345;

{$APPTYPE CONSOLE}

uses
SysUtils;
const n=4;
var a:array[1..n,1..n]of integer;
b: integer;
i,j:integer;
begin
randomize;
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=random(101)-50;
write(a[i,j]:5);
end;
writeln;
end;
writeln('izmenennaya:');
for j:=1 to n do
begin
b:=a[1,j];
a[1,j]:=a[n-1,j];
a[n-1,j]:=b;
end;
for i:=1 to n do begin
for j:=1 to n do
write(a[i,j]:5);
end;
readln;
end.
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 30.11.2010, 23:09   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

можно так:
Код:
uses
SysUtils; 

const n = 4;

               {n+1 строка - как временный буфер }
var a: array[1..n+1, 1..n] of integer;
  i, j: integer;
begin
  randomize;
  for i := 1 to n do
  begin
    for j := 1 to n do
    begin
      a[i, j] := random(101) - 50;
      write(a[i, j]: 5);
    end;
    writeln;
  end;

  {вот три строчки, которые меняют
     местами первую и предпоследнюю строки массива}
  a[n+1] := a[1];
  a[1] := a[n-1];
  a[n-1] := a[n+1];


  {выведем изменённый массив на экран}
  writeln('izmenennaya matrica:');
  for i := 1 to n do
  begin
    for j := 1 to n do
    begin
      write(a[i, j]: 5);
    end;
    writeln;
  end;
  readln;
end.
p.s. ничего, что я при замене обошёлся без циклов?
если хотите, могу и с циклом нарисовать пример...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.11.2010, 23:10   #10
Асик
Новичок
Джуниор
 
Регистрация: 28.11.2010
Сообщений: 5
По умолчанию

Спасииибо огрооомнейшее)))
Асик вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу найти ошибку T-dayne Помощь студентам 4 11.10.2010 11:51
Не могу найти ошибку maxistudent Общие вопросы C/C++ 6 29.04.2010 20:52
Не могу найти ошибку С\С++ Айдар Помощь студентам 1 08.03.2010 18:16
Не могу найти ошибку в БД Bilargo Помощь студентам 0 26.11.2009 14:00