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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2015, 16:38   #1
den4ik-tv
Новичок
Джуниор
 
Регистрация: 24.10.2015
Сообщений: 6
Восклицание Array 72

Здравствуйте. Мне нужен исходник рабочей программы задачника pascal array 22.
Дан массив а размера n и целые числа k и l. Переставить в обратном порядке элементы массива с нумерами от k до l включительно.
Задачу нужно решить с помощью динамического массива. У меня цикл делает на 1 шаг больше. В чем у меня ошибка?

Код:
 var n := readinteger;
  var a := readarrreal(n);
  var k := readinteger;
  var l := readinteger;
  var x := n - 1;
  for var i := k - 1 to (l - 1)div 2 - 1 do
  begin
    var t := a[x];
    a[x] := a[i];
    a[i] := t;
    x -= 1;
  end;
  a.write;
den4ik-tv вне форума Ответить с цитированием
Старый 24.10.2015, 16:50   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Еолки-палки... А что это за паскаль такой?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.10.2015, 16:54   #3
den4ik-tv
Новичок
Джуниор
 
Регистрация: 24.10.2015
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Еолки-палки... А что это за паскаль такой?
pascalABC.net версии 3
А что вас удивило?
den4ik-tv вне форума Ответить с цитированием
Старый 24.10.2015, 17:55   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А что вас удивило?
Все. Я такого паскаля еще не видел.
Ну ладно. Млепота - это мои проблемы.
Код:
  
  for var i := k - 1 to ((l - k) div 2) + k do
  begin
    var t := a[i];
    a[l] := a[i];
    a[l] := t;
  end;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.10.2015, 18:40   #5
den4ik-tv
Новичок
Джуниор
 
Регистрация: 24.10.2015
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Все. Я такого паскаля еще не видел.
Ну ладно. Млепота - это мои проблемы.
Код:
  
  for var i := k - 1 to ((l - k) div 2) + k do
  begin
    var t := a[i];
    a[l] := a[i];
    a[l] := t;
  end;
ошибочное решение..(
Код:
var n := readinteger;
  var a := readarrreal(n);
  var k := readinteger;
  var l := readinteger;
  var x :=l-1;
  for var i := k - 1 to ((l - k) div 2) + k do
  begin
    var t := a[i];
    a[l] := a[i];
    a[l] := t;
  end;
  a.write;
den4ik-tv вне форума Ответить с цитированием
Старый 24.10.2015, 19:02   #6
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

хД не зря когда то решебник пилил, динамический сам прикручивай
Код:
//Дан массив A размера N и 
//целые числа K и L (1 <= K
//Переставить в обратном порядке 
//элементы массива, 
//расположенные между элементами 
//Ak и Al, включая эти элементы. 
program Array72;
var
a: array [1..10] of integer;
K,L:integer;
temp:integer; // переменная для обмена значениями двух переменных 
N:integer;
i:integer; // счетчик в цикле 
begin
// ввод данных 
writeln('Введите N (N<=10)');
readln(N);
writeln('Введите K и L '); readln(K);
readln(L);
writeln('Значения массива А');
// формирование исходного массива 
for i:=1 to n do begin write('a[',i,']=');readln(A[i]); end;
// решение 
for i:=1 to (l-k+1) div 2 do
begin
// обмен значениями элементов 
temp:=a[k+i-1];
a[k+i-1]:=a[l-i+1];
a[l-i+1]:=temp;
end;
// вывод результата 
Writeln('Ответ');
Writeln;
Write(' A[]: '); for i:=1 to n do Write(A[i],' ');
end.
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 24.10.2015 в 19:05.
Mad_Cat вне форума Ответить с цитированием
Старый 24.10.2015, 19:31   #7
den4ik-tv
Новичок
Джуниор
 
Регистрация: 24.10.2015
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
хД не зря когда то решебник пилил, динамический сам прикручивай
Код:
//Дан массив A размера N и 
//целые числа K и L (1 <= K
//Переставить в обратном порядке 
//элементы массива, 
//расположенные между элементами 
//Ak и Al, включая эти элементы. 
program Array72;
var
a: array [1..10] of integer;
K,L:integer;
temp:integer; // переменная для обмена значениями двух переменных 
N:integer;
i:integer; // счетчик в цикле 
begin
// ввод данных 
writeln('Введите N (N<=10)');
readln(N);
writeln('Введите K и L '); readln(K);
readln(L);
writeln('Значения массива А');
// формирование исходного массива 
for i:=1 to n do begin write('a[',i,']=');readln(A[i]); end;
// решение 
for i:=1 to (l-k+1) div 2 do
begin
// обмен значениями элементов 
temp:=a[k+i-1];
a[k+i-1]:=a[l-i+1];
a[l-i+1]:=temp;
end;
// вывод результата 
Writeln('Ответ');
Writeln;
Write(' A[]: '); for i:=1 to n do Write(A[i],' ');
end.
Блииин, вообще думать не могу...
Сделай так, что бы можно было вставлять код прямо в паскаль, пожалуйста)
den4ik-tv вне форума Ответить с цитированием
Старый 24.10.2015, 19:36   #8
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
Сделай так, что бы можно было вставлять код прямо в паскаль, пожалуйста)
А этот че сопротивляется? вставляться не хочет?
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 24.10.2015, 19:59   #9
den4ik-tv
Новичок
Джуниор
 
Регистрация: 24.10.2015
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
А этот че сопротивляется? вставляться не хочет?
Вставлять то вставляет, просто мне не кайф добавлять "динамику" .
И тот цикл все равно выдает ошибочное решение...
den4ik-tv вне форума Ответить с цитированием
Старый 24.10.2015, 20:01   #10
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
просто мне не кайф добавлять "динамику"
если не в кайф - ветка Фриланс примет вас с распростертыми обьятьями
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Для чего существует коммутативность array[2] == 2[array] _PROGRAMM_ Помощь студентам 10 02.11.2014 13:33
Записать Array of AnsiChar в Array of AnsiChar Anton911 Общие вопросы Delphi 4 07.05.2012 21:58
str->array & array->str LeoN PHP 6 06.07.2010 22:38
Array CrystaLize Паскаль, Turbo Pascal, PascalABC.NET 7 29.09.2009 21:33
Array или не array Димарик Общие вопросы Delphi 4 18.06.2007 15:16