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

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

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

Восстановить пароль

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

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

Задача.

Даны числа a1..a64. Сгенерировать их в диапозоне 1-64 и по закону равномерного распределения разместить их в двумерном массиве 8 на 8, по такой схеме

---<----
I--->---
---<---I

и т.д.

Есть на эту задачу вот такая программка, но она уходит в вечный цикл, самому исправить не удаёться, помогите пожалуйста.



uses wincrt;
var
a : array[1..100] of integer;
x : array[1..10,1..10] of integer;

i, j,
m, n,
k : byte;
g : integer;
r : real;

begin
randomize;
repeat
clrscr;
write('Введите количество элементов : '); readln(m);

r := sqrt(m);

if r <> trunc(r)
then
writeln('С такого количества не получится кв. матрица.');

until r = trunc(r);

writeln('Massive : ');
for i:=1 to m do
begin
g := random(11) - 3;
a[i] := g;
write(a[i],' ');
end;

j := 1;
k := 1;
n := trunc( sqrt(m) );
for i:=1 to m do
begin
x[j,k] := a[i];
if i mod n = 0
then
begin
inc(j);
k := 0;
end;
inc(k);
end;
writeln;

writeln('Сформированная матрица : ');
for i:=1 to n do
begin
for J:=1 to n do
write(x[i,j],' ');
writeln;
end;

k := n-1;
for i:=1 to n do
if odd(i)
then
repeat
for j:=1 to k do
if x[i,j] < x[i,j+1]
then
begin
g := x[i,j];
x[i,j] := x[i,j+1];
x[i,j+1] := g;
end;
dec(k);
until k < 1
else
repeat
for j:=1 to k do
if x[i,j] > x[i,j+1]
then
begin
g := x[i,j];
x[i,j] := x[i,j+1];
x[i,j+1] := g;
end;
dec(k);
until k < 1;

writeln('Отсортированная матрица : ');
for i:=1 to n do
begin
for j:=1 to n do
write(x[i,j],' ');
end;
end.
Winterwolf93 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не пойму в чём проблема. Кажется дело в типах.(С++) Зелёный Помощь студентам 2 26.11.2010 09:49
не пойму в чем проблема Нике Общие вопросы C/C++ 2 24.09.2010 17:55
Проблема сам не пойму от чего saggy Свободное общение 23 07.07.2010 16:32
Ресурсы приложения, не пойму в чём проблема. Air Общие вопросы Delphi 13 10.08.2008 21:44