profile
Размещено 4 года назад по предмету Информатика от andr9166696553

Дан одномерный массив, сформировать из него двухмерный отсортированный змейкой: Начиная с правого нижнего угла вертикально. Pascal ABC
Вот код, только здесь выводится с левого угла, а мне нужно с правого:
uses crt;
var a:array [1..25] of integer;   
ar:array [1..25,1..25] of integer;
i,n,s,j,x:integer;b:real;
L:boolean;
begin     
write('n=');     
readln(n);     
writeln('Заполните массив:');     
For i:=1 to n do readln(a[i]);     
For i:=1 to n do     
For j:=i+1 to n do     
If a[i]>a[j] then begin       
x:=a[i];       
a[i]:=a[j];       
a[j]:=x;     
end;     
s:=1;     
writeln('Отсортированный массив: ');     
For i:=1 to n do write(a[i], ' ');     
writeln;     b:=sqrt(n);     
n:=round(b);     
writeln('Двумерный массив: ');     
for j:=1 to n do begin         
for i:=1 to n do begin             
ar[i,j]:=s;           
 if (j mod 2 = 0) and (i<>n) then dec(s)             
else inc(s);         
end;         
s:=s+n-1;     
end;     
for i:=n downto 1 do begin       
 for j:=1 to n do write(ar[i,j]);         
writeln;     
end;
end.
Помогите пожалуйста

  1. Ответ на вопрос
    Ответ на вопрос дан Аккаунт удален
    uses
      crt;

    var
      a: array [1..25] of integer;  
      ar: array [1..5, 1..5] of integer;
      i, j, k, n, m, x: integer;

    begin
      write('n=');    
      readln(n);    
      writeln('Заполните массив:');    
      for i := 1 to n do read(a[i]);    
      for i := 1 to n do    
        for j := i + 1 to n do    
          if a[i] > a[j] then begin
            x := a[i];      
            a[i] := a[j];      
            a[j] := x;    
          end;    
      writeln('Отсортированный массив: ');    
      for i := 1 to n do write(a[i], ' ');    
      writeln;
      n := floor(sqrt(n));
      m := sqr(n);
      writeln('Двумерный массив: ');
      for k := 1 to m do
      begin
        x := (k - 1) div n;
        j := n - x;
        if x mod 2 = 0 then
          i := n * (x + 1) + 1 - k
        else
          i := k - n * x;
        ar[i, j] := a[k]
      end;    
      for i := 1 to n do
      begin
        for j := 1 to n do write(ar[i, j]:4);        
        writeln
      end
    end.

    Тестовое решение:

    n=16
    Заполните массив:
    1 3 5 7 9 11 13 15 2 4 6 8 10 12 14 16
    Отсортированный массив:
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
    Двумерный массив:
      13  12   5   4
      14  11   6   3
      15  10   7   2
      16   9   8   1

    n=25
    Заполните массив:
    1 3 5 7 9 11 2 4 6 8 10 12 14 13 16 17 15 20 18 19 23 25 22 21 24
    Отсортированный массив:
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
    Двумерный массив:
      25  16  15   6   5
      24  17  14   7   4
      23  18  13   8   3
      22  19  12   9   2
      21  20  11  10   1





    1. Ответ на вопрос
      Ответ на вопрос дан andr9166696553
      trunc есть, спасибо большое
    2. Ответ на вопрос
      Ответ на вопрос дан Аккаунт удален
      Значит решили проблему. Советую АБЦ.Нет поставить - она гораздо мощнее
    3. Ответ на вопрос
      Ответ на вопрос дан andr9166696553
      Alviko можешь помочь с похожей программой, сейчас выложил?
    4. Ответ на вопрос
      Ответ на вопрос дан andr9166696553
      Alviko, а сдесь можно спросить?
Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 5 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.