Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 11.10.2014
Сообщений: 29

Переставить элементы следующим образом

17.12.2015, 22:10. Показов 560. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Первые две части задания я сделал, а вот третья часть не работает. Помогите закончить программу. Заранее спасибо.

1.Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка [-10,60]. Удалить из него все элементы, в которых последняя цифра четная, а само число делится на нее.
2.Вставить элемент со значением К до и после всех элементов, заканчивающихся на цифру К.
3.Переставить элементы следующим образом: a[1], a[12], a[2], a[11], a[3], a[10],a[4], a[9], a[5], a[8], a[6], a[7].

Вот код:
Delphi Скопировано
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
resultArray: array of integer;
  n:integer;
 
procedure TForm3.BitBtn1Click(Sender: TObject);
  const
  rangemax=60;
  rangemin=-10;
  var
  i:integer;
begin
    randomize;
    n:=strtoint(Edit1.Text);
    StringGrid1.ColCount:=n;
    Setlength(resultarray,n);
    for i:=0 to n-1 do
  begin
    resultarray[i]:=rangemin+random(rangemax-rangemin);
    StringGrid1.Cells[i,0]:=(inttostr(resultarray[i]));
  end;
end;
 
procedure TForm3.BitBtn2Click(Sender: TObject);
  var i,j,chislo:integer;
begin
    i:=0;
    while i<n do
begin
    chislo:=resultArray[i] mod 10;
   if (chislo<>0) and (chislo mod 2=0)and(resultArray[i] mod chislo=0) then
begin
   if i=n-1 then n:=n-1 
   else
begin
     for j:=i to n-2 do 
     resultArray[j]:=resultArray[j+1];
     n:=n-1;
end;
end
   else
      inc(i);
end;
      Stringgrid2.ColCount:=n;
      for i:=0 to n-1 do
      Stringgrid2.Cells[i,0]:=(inttostr(resultarray[i]));
end;
 
Function FindK(element, K:integer):boolean;
begin
  if (abs(element) mod 10) <> K then
      Result := false
  else Result := true;
end;
 
 
procedure TForm3.BitBtn4Click(Sender: TObject);
var
  k,s,i,j:integer;
  tmpArray : array of integer;
begin
    k:=strtoint(Edit2.Text);
    i:=0;
    SetLength(tmpArray, N*3);
    j := -1;
    for i :=0 to N-1 do
      begin
        inc(j);
        if FindK(resultArray[i],K) then
          begin
            tmpArray[j] := K;
            inc(j);
            tmpArray[j] := resultArray[i];
            inc(j);
            tmpArray[j] := K;
            inc(n,2);
            end
        else
 
           tmpArray[j] := resultArray[i];
      end;
 
       Stringgrid3.ColCount:=n;
       for i:=0 to j do
       StringGrid3.Cells[i,0]:=(IntToStr(tmpArray[i]));
 
end;
 
 
procedure TForm3.BitBtn5Click(Sender: TObject);
var
i,j,x:integer;
begin
         Setlength(resultarray,n);
      while i<n do
       begin
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.12.2015, 22:10
Ответы с готовыми решениями:

Переставить элементы следующим образом
одномерные массив. Дан массив целых чисел из n элементов, заполненный случайным образом. Переставить элементы следующим образом: a, a,...

Дано целое число N (>0). Последовательность вещественных чисел Ak определяются следующим образом: A0=2, Ak=2+1/Ak-1, K=1,2,. . Вывести элементы A1,A
Пожайлуйста помогите надо решить задачу за выходные!!! Дано целое число N (&gt;0). Последовательность вещественных чисел Ak определяются...

Массив: переставить элементы таким образом, чтобы сначала были записаны все положительные, затем все отрицател
Переставить члены последовательности так, чтобы сначала расположились все ее неотрицательные члены, а потом – все отрицательные. Порядок...

1
105 / 104 / 29
Регистрация: 15.01.2011
Сообщений: 501
18.12.2015, 07:17
glozigor, попробуйте вот так
Delphi Скопировано
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure perestanovka(var Arr: TArr);
var
  i: integer;
  temp: variant;
begin
  for i := Low(Arr) to High(Arr) do
    if (i < High(Arr)-i) then
      begin
        temp:=Arr[i];
        Arr[i]:=Arr[High(Arr)-i];
        Arr[High(Arr)-i]:=temp;
      end
    else Exit;
end;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.12.2015, 07:17
Помогаю со студенческими работами здесь

*. В файле из вещественных чисел переставить элементы таким образом, чтобы сначала были записаны все положительные, затем все отрицательные, а потом
Помогите с задачей! Видел подобное решение в нижестоящей теме но оно слишком сложное желательно решить БЕЗ использование процедур и...

Массив: переставить элементы таким образом, чтобы сначала были записаны все положительные, затем все отрицательные, а потом все нули.
Здравствуйте! помогите пожалуйста с задачей по информатике. Буду очень благодарна) В массиве из вещественных чисел переставить...

Заполнить таблицу СтрингГрид следующим образом
Есть таблица СтрингГрид на 3 строки и на 11 столбцов - первая строка и первый столбец фиксированы Вид: 1 2 3 4 5 6 7 8 9 ...

Нужно заполнить таблицу СтрингГрид следующим образом:
Есть таблица СтрингГрид на 3 строки и на 11 столбцов - первая строка и первый столбец фиксированы Вид: __1 2 3 4 5 6 7 8 9 ...

Преобразовать формат сведений об учащихся следующим образом
Здравствуйте уважаемые Программисты) Нужна помощь для решения задачи на Delphi: Задается файл сведений об учащихся по следующему...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Миграция монолита в Event-Driven микросервисную архитектуру на C#
stackOverflow 11.04.2025
Монолитная архитектура – классический подход к разработке программного обеспечения. Это приложение, построенное как единое целое, где все компоненты тесно связаны между собой. Большинство проектов. . .
Go в Kubernetes: Управление ресурсами
golander 11.04.2025
Разработчики Go-приложений в Kubernetes часто сталкиваются с неожиданными проблемами производительности и даже внезапными отказами контейнеров. Причина этого кроется в особенностях взаимодействия. . .
Агрегаты и сущности в DDD микросервисах
Javaican 10.04.2025
Разработка современных программных систем часто приводит на распутье: монолит или микросервисы? Даже при выборе микросервисной архитектуры многие команды сталкиваются с проблемой правильного. . .
Многопоточность в C#: Task и параллельное программирование
UnmanagedCoder 10.04.2025
Современные процессоры уже давно перестали наращивать тактовую частоту в пользу увеличения количества ядер. Это создало интересную ситуацию: разработчики, привыкшие к последовательному. . .
Линейное решение нелинейной задачи будет иметь приблизительный результат вычисления для метода обработки данных из double buffering.
Hrethgir 10.04.2025
Вообще изначально я пренебрёг квадратурой числа, но потом понял, что для вычисления приблизительного значения - сгодится, формулу можно будет корректировать по ходу. Это потому что прямое соотношение. . .
Переменные в Python
py-thonny 10.04.2025
Переменная в программировании — это символическое имя, связанное с областью памяти, в которой хранится значение. Она позволяет получать доступ к данным через понятные человеку идентификаторы, а не. . .
Многопоточность в C#: Task и асинхронные операции
UnmanagedCoder 10.04.2025
Многопоточность позволяет выполнять несколько операций одновременно, что важно для решения двух основных задач: повышения скорости выполнения вычислительно-сложных операций и сохранения отзывчивости. . .
Запуск контейнеров Docker на ARM64
Mr. Docker 09.04.2025
Появление таких решений, как Apple M1/ M2, AWS Graviton, Ampere Altra и Raspberry Pi, сделало использование ARM-систем обыденностью для многих разработчиков и DevOps-инженеров. При этом Docker,. . .
Vue SFC компонент на PHP с Fusion
Jason-Webb 09.04.2025
PHP на сервере и JavaScript на клиенте — классическое сочетание, которое, несмотря на свою эффективность, создает определенный когнитивный диссонанс при разработке. В этом контексте появляются. . .
TypeScript vs JavaScript: Отличия и когда что использовать
Reangularity 09.04.2025
JavaScript появился в 1995 году как творение Брендана Эйха и быстро стал основой интерактивности в вебе. За свою историю он прошел путь от простого языка для манипуляций с DOM до полноценной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер