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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.04.2014, 23:15   #1
ioan34
Пользователь
 
Регистрация: 21.04.2014
Сообщений: 11
По умолчанию Битый час пробую написать код...не получается...помоги плиз!!!

Ввести одномерный массив , вывести его. Переставить в обратном порядке его элементы, исключая от перестановки при этом элементы, расположенные между максимумом и минимумом. код нужен на пакале

Последний раз редактировалось ioan34; 21.04.2014 в 23:17.
ioan34 вне форума Ответить с цитированием
Старый 21.04.2014, 23:17   #2
ioan34
Пользователь
 
Регистрация: 21.04.2014
Сообщений: 11
По умолчанию

код нужен на паскале
ioan34 вне форума Ответить с цитированием
Старый 21.04.2014, 23:26   #3
AnryKZKZ
Пользователь
 
Регистрация: 15.04.2014
Сообщений: 62
По умолчанию

Доброй ночи. Откуда будет браться массив и куда он будет "закачиваться" обратно? файл или консоль (клава/экран)? Какова длина массива? Если массив планируешь динамический - нужно писать обработчик динамического массива.

Исходный код (что есть) в студию.
AnryKZKZ вне форума Ответить с цитированием
Старый 22.04.2014, 00:02   #4
ioan34
Пользователь
 
Регистрация: 21.04.2014
Сообщений: 11
По умолчанию

массив длиной в N, ввожу элементы с клавиатуры, вывод на консоль...я не пойму как сделать перестановку элементов в обратном порядке не трогая элементы между max и min...я только начинаю программировать...
ioan34 вне форума Ответить с цитированием
Старый 22.04.2014, 00:08   #5
AnryKZKZ
Пользователь
 
Регистрация: 15.04.2014
Сообщений: 62
По умолчанию

Во первых найди номер ячейки в которых находятся минимальное (b[i]) и максимальное (b[j]) значения. И сравни - если i > j, то переставляем 0...i и j...N? иначе 0...j и i...N. Идея понятна?
AnryKZKZ вне форума Ответить с цитированием
Старый 22.04.2014, 13:52   #6
ioan34
Пользователь
 
Регистрация: 21.04.2014
Сообщений: 11
По умолчанию

да вот делал, но вот проблема, мне нужно по идее поменять весь массив кроме промежутка от max до min...так как ты предлагаешь у меня получается поменять только по краям отдельно...
ioan34 вне форума Ответить с цитированием
Старый 22.04.2014, 13:58   #7
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,432
По умолчанию

Ну вот есть у Вас для перестановки два отрезка [1, i] и [j, N] (i < j, если не так, то поменяйте значения местами). Обычная сортировка выглядит так:
Код:
for k := 1 to N - 1 do
  for p := k + 1 to N do
    //сравнение k-го и p-го элементов
Осталось переписать этот двойной цикл, чтобы "перескакивать" часть массива:
Код:
k := 1;
while k < N do
begin
  if k = i + 1 then
    k := j;
  if k = N then
    continue;
  p := k + 1;
  while p <= N do
  begin
    if p = i + 1 then
      p := j;
    //сравнение k-го и p-го элементов
    inc(p);
  end;
  inc(k);
end;
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 22.04.2014 в 14:04.
BDA вне форума Ответить с цитированием
Старый 22.04.2014, 14:16   #8
AnryKZKZ
Пользователь
 
Регистрация: 15.04.2014
Сообщений: 62
По умолчанию

Есть что-то уже написанное? Каков исходный код?
AnryKZKZ вне форума Ответить с цитированием
Старый 22.04.2014, 14:39   #9
ioan34
Пользователь
 
Регистрация: 21.04.2014
Сообщений: 11
По умолчанию

не сохранил, но могу сказать что из массива 4 6 5 1 5 9 7 8 6 получался 5 6 4 1 5 9 6 8 7...а должен по идее 6 8 7 1 5 9 5 6 4...или я что то в задании не понял...
ioan34 вне форума Ответить с цитированием
Старый 22.04.2014, 16:07   #10
AnryKZKZ
Пользователь
 
Регистрация: 15.04.2014
Сообщений: 62
По умолчанию

Цитата:
Сообщение от ioan34 Посмотреть сообщение
не сохранил, но могу сказать что из массива 4 6 5 1 5 9 7 8 6 получался 5 6 4 1 5 9 6 8 7...а должен по идее 6 8 7 1 5 9 5 6 4...или я что то в задании не понял...
Коллега.
1) Уточните задание. 2) постарайтесь составить хоть какой-нить прототип программы.
А то так у вас получается "помогите! = составьте для меня программу"
AnryKZKZ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не получается написать код hello19 Visual C++ 1 04.08.2011 13:52
ПОМОГИ.те написать програму+мшинний код к ней Dzef Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 28.05.2010 10:08
Не получается написать код для File>Open fs444 C++ Builder 4 25.08.2009 09:26
Помогите написать функцию плиз.Не получается Clockgen Microsoft Office Excel 2 14.12.2008 22:01
Пробую написать свой сервис... =LeonZone= Win Api 4 30.09.2007 16:46