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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.06.2013, 19:39   #1
Дмитрий12345678910
Новичок
Джуниор
 
Регистрация: 17.06.2013
Сообщений: 1
По умолчанию Двумерный массив

Дан двумерный массив D(9,9) со случайными целыми числами в интервале [-30,30].Из столбцов кратных трем,создать одномерный массив.(помогите пожалуйста.Нужен алгоритм и программа)
Дмитрий12345678910 вне форума Ответить с цитированием
Старый 04.07.2013, 17:37   #2
ruN00b
Почетный нуб
Форумчанин
 
Аватар для ruN00b
 
Регистрация: 07.05.2013
Сообщений: 155
По умолчанию

Код:
Function rand(a,b:integer):integer; //random из 2 чисел
Begin
Result:=random(b-a+1)+a;
End;

Var
D:array[1..9,1..9]of integer;
G:array[1..27]of integer;
X,y:integer;
Begin
For x:=1 to 9 do begin
For y:=1 to 9 do begin
D[x,y]:=rand(-30,30); //генерируем матрицу
Write(d[x,y]:4); //выводим на экран
End;
Writeln;
End;
For y:=1 to 3 do begin
For x:=1 to 9 do begin
G[x+y*3]:=d[x,y*3]; //формируем массив
Writeln(g[x+y*3]);
End;
Writeln;
End;
Readln;
End.
ruN00b вне форума Ответить с цитированием
Старый 04.07.2013, 19:52   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ruN00b, хорошая попытка!

Забыли randomize; в начале программы (иницилизация ГПСЧ)

ну и с индексацией в одномерном массиве G напутали
смотрите, самый первый элемент, при y=1 и x=1 в G индекс будет G[1+1*3 ] -> G[4]
ну и остальные индексы тоже смещены аналогично...
Сами поправите или подсказать?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.07.2013, 22:42   #4
ruN00b
Почетный нуб
Форумчанин
 
Аватар для ruN00b
 
Регистрация: 07.05.2013
Сообщений: 155
По умолчанию

g[x+y*3]:=d[x,y*3]
меняем на
g[x+y*3-3]:=d[x,y*3];

Насчет рандомайза, да, забыл, у меня и так работает на ХЕ3
ruN00b вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двумерный массив развернуть в одномерный массив по строкам[QBASIC] TrueStyle777 Помощь студентам 3 29.05.2013 21:56
двумерный массив vovik4385 Общие вопросы C/C++ 0 14.03.2012 18:29
Одномерный массив и Двумерный массив eugene1437 Общие вопросы C/C++ 15 25.05.2011 19:17
двумерный массив ДваДваВо7 Помощь студентам 1 06.12.2010 18:05
Двумерный массив, одномерный массив. Branbal Помощь студентам 14 18.11.2009 12:40