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


Ответ
 
Опции темы Опции просмотра
Старый 10.06.2011, 18:59   #1 (permalink)
Андрей Романюк
Member
 
Регистрация: 13.05.2011
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помощь в Паскале

задать двумерный массив B[6,6] случайным образом на промежутке от [-25;25]
затем создать новый одномерный массив из элементов меньших 5

получилось все кроме одного: выводит последний символ не правильно
и еще вопрос можно ли сделать этот массив меньше чем А[1..36]??

uses crt;
Type mas = array [1..6 , 1..6] of integer;
var B:mas{ двумер.массив};
A:array[1..36] of integer;{одномер.массив}
i,j,k:integer;{индексы массивов}
begin
clrscr;
randomize;
for i:=1 to 6 do begin
for j:=1 to 6 do begin
B[i,j]:=random(50)-25;
write(B[i,j]:5);
end;
writeln;
end;
writeln;
for i:=1 to 6 do begin
for j:=1 to 6 do begin
if B[i,j]<5 then A[k]:=B[i,j];
if B[i,j]>=5 then A[k]:=0;
write(A[k]:4);
end;
end;
readln;
end.
Андрей Романюк вне форума   Ответить с цитированием

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

Возможно решение вашего вопроса можно найти в одной из этих тем

Помощь в Паскале
Требуется помощь в Паскале

Старый 10.06.2011, 19:00   #2 (permalink)
Андрей Романюк
Member
 
Регистрация: 13.05.2011
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

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

Так. А значение параметра k - Пушкин задавать будет? И потом - зачем заполнять массив А нулями? Вроде как в условии это не требуется. Отсюда работающий вариант:
Код:
uses crt;
Type
 mas = array [1..6 , 1..6] of integer;
var
 B:mas{ двумер.массив};
 A:array[1..36] of integer;{одномер.массив}
 i,j,k:integer;{индексы массивов}
begin
 clrscr;
 randomize;
 for i:=1 to 6 do
  begin
   for j:=1 to 6 do
    begin
     B[i,j]:=25-random(50);
     write(B[i,j]:5);
    end;
   writeln;
  end;
 writeln;
 k:=0;
 for i:=1 to 6 do
  for j:=1 to 6 do
   if B[i,j]<5 then
    begin
     k:=k+1;
     A[k]:=B[i,j];
     write(A[k]:5);
    end;
 readln;
end.
Vladimir_S вне форума   Ответить с цитированием
Старый 10.06.2011, 20:52   #4 (permalink)
Андрей Романюк
Member
 
Регистрация: 13.05.2011
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

ага, спасибо, массив А заполнил нулями т.к. значение к не задал) без этого он мне выводил 36 чисел, а числа которые не были меньше 5 он заменял числом ( предыдущим) которое было меньше 5, поэтому я их сделал 0, так более понятно было))))))
Андрей Романюк вне форума   Ответить с цитированием
Ads

Яндекс

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


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

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




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

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