Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 04.02.2010, 13:30   #11 (permalink)
scald
Новичок
 
Регистрация: 04.02.2010
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

За первую спасибо огромное!
scald вне форума   Ответить с цитированием

Старый 04.02.2010, 13:30
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Если решение проблемы затянулось - можете прочитать данные темы

Помогите пожалуйста с задачей по C++
Помогите с задачей в Паскале
Помогите с задачей на С++ очень срочно нужно...пожалуйста
Пожалуйста, помогите с задачей

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

Цитата:
Сообщение от scald Посмотреть сообщение
Ввести размер прямоугольной матрицы и значения ее элементов.
Построить вектор В, где В(i) - максимальное значение в i-ом столбце
Код:
VAR
 A:ARRAY[1..10,1..10] of WORD;
 M:ARRAY[1..10] of WORD;
 Nl,Nc,i,j:INTEGER;
BEGIN
 Write('Enter the number of lines (<=10): ');
 ReadLn(Nl);
 Write('Enter the number of columns(<=10): ');
 ReadLn(Nc);
 WriteLn('Enter the integer positive values of matrix elements:');
 For i:=1 to Nl do
  For j:=1 to Nc do
   begin
    Write('A[',i,',',j,']= ');
    ReadLn(A[i,j]);
   end;
 WriteLn;
 For i:=1 to Nl do
  begin
   For j:=1 to Nc do
    Write(A[i,j]:8);
   WriteLn;
  end;
 WriteLn;
 For j:=1 to Nc do
  begin
   M[j]:=A[1,j];
   For i:=2 to Nl do
    If A[i,j]>M[j] then M[j]:=A[i,j];
  end;
 WriteLn('The array of maximum column values:');
 For j:=1 to Nc do
  WriteLn('M[',j,']= ',M[j]);
 ReadLn;
END.
Vladimir_S вне форума   Ответить с цитированием
Старый 04.02.2010, 17:56   #13 (permalink)
scald
Новичок
 
Регистрация: 04.02.2010
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

и за вторую спасибо большое. Знать бы конечно алгоритм ещё...ну да ладно. Спасибо Vladimir_S ! Не забуду Вашу отзывчивость и понимание ситуации. Всего Вам доброго!!!
scald вне форума   Ответить с цитированием
Старый 18.02.2010, 19:07   #14 (permalink)
Linka
Member
 
Аватар для Linka
 
Регистрация: 24.01.2010
Сообщений: 43
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 26
По умолчанию

Владимир, а почему во второй программе, вы не сделали так:

Код:
 A:ARRAY[1..Nl,1..Nc] of WORD;
с последующим вводом Nl и Nc с клавиатуры ? А сначала поставили ограничения в 10 элементов ?
Linka вне форума   Ответить с цитированием
Старый 18.02.2010, 19:46   #15 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Linka Посмотреть сообщение
Владимир, а почему во второй программе, вы не сделали так:

Код:
 A:ARRAY[1..Nl,1..Nc] of WORD;
с последующим вводом Nl и Nc с клавиатуры ? А сначала поставили ограничения в 10 элементов ?
А потому что Паскаль такого не допускает. В свое время (много-много лет назад) это для меня было сильным разочарованием - я перешел на Паскаль с языка, в котором подобные конструкции были в порядке вещей. Потом привык.
Что же можно?
1. Определить диапазон массива явно, как сделано в программе. Если длина массива наперед не известна, то нужно взять верхнюю границу "с запасом", благо современные компьютеры это позволяют. Почему 10? А с потолка. Ну то есть не совсем - хотелось, чтобы матрица помещалась на экране в DOS-моде.
2. Задать числа (Nl, Nc) в виде КОНСТАНТ. И только констант. Тогда появится несколько большая свобода, но всё равно, чтобы изменить значения этих чисел, придется лазать в текст программы, а потом перетранслировать.
Вот так. А больше - никак. Ну если, конечно, не лезть в динамические переменные, указатели и т.п. Но это - совсем другая кухня.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 19.02.2010, 01:52   #16 (permalink)
Linka
Member
 
Аватар для Linka
 
Регистрация: 24.01.2010
Сообщений: 43
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 26
По умолчанию

Ясно ) Спасибо
Linka вне форума   Ответить с цитированием
Ads

Яндекс

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


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 16:03.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.