Показать сообщение отдельно
Старый 01.12.2010, 22:05   #4 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от garik Посмотреть сообщение
Преподаватель сказал,что ввод n и m должен осуществлятся после запуска программы,т.е. нужно написать,чтобы после запуска программы была надпись введите строку и введите столбец соответственно.И я не знаю как мою программу переделать,чтобы это все было
И поэтому Вы в листинге вообще выкинули ввод данных? Лихо...
Не знаю, правильно ли я понимаю ход мысли преподавателя, но поступить можно так: задать, как у Вас это и сделано на фото, массив "с запасом", затем ввести n и m (порознь, потому что матрица может быть и не квадратной!), а затем вводить саму матрицу, причем не "вслепую", как у Вас, а с выводом номера строки и столбца. В итоге я бы написал так:
Код:
program p2;
uses crt;
var
 i,j,p,n,m:integer;
 matrix: array[1..100,1..100] of integer;
begin
 Write('Number of rows = ');
 ReadLn(n);
 Write('Number of columns = ');
 ReadLn(m);
 For i:=1 to n do
  For j:=1 to m do
   begin
    Write('matrix[',i,',',j,']= ');
    ReadLn(matrix[i,j]);
   end;
 WriteLn;
 For i:=1 to n do
  begin
   For j:=1 to m do
     Write(matrix[i,j]:5);
   WriteLn;
  end;
 WriteLn;
 for i:=1 to n do
  if i mod 2 = 1 then
   begin
    p:=0;
    for j:=1 to m do
     p:=p+matrix[i,j];
    writeln('The sum of elements of ',i,' row is ',p);
   end;
 readln;
end.
Важно:
1. Нумерацию строк и столбцов матрицы принято начинать с 1, а не с 0.
2. По завершении ввода элементов предусмотрен вывод на экран всей матрицы.
3. В соответствии с условиями задачи, подсчитывается и выводится сумма элементов КАЖДОЙ нечетной строки, а не всех скопом, как у Вас.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070