Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 25.02.2018, 20:32   #1
Родион Афанасьев
Новичок
 
Регистрация: 25.02.2018
Сообщений: 1
Репутация: 10
По умолчанию Помогите решить задачу,пожалуйста!!!вторую часть не могу решить.

Разработка в среде Turbo Pascal программы поиска двух ближайших элементов в массиве.
Дан целочисленный массив размера N.
1. Найти номера двух ближайших элементов из этого массива (то есть элементов с наименьшим модулем разности) и вывести эти номера в порядке возрастания.
2. Упорядочить нечетные по значению элементы второй четверти массива по убыванию обратных значений.
Для отладки программы исходный массив сформировать с помощью генератора случайных чисел.
Код:

program H_2o;
uses crt;
var
a: array[1..100] of integer;
i,j, n,x,index,del_min,del,v: integer;
begin
randomize;
write ('Введите размер массива до  100');
readln (n);
writeln ('Массив');
for i:=1 to n do
    begin
    a[i] := random(71);
    write(a[i]:4);
    end;
writeln;
index:=1;
del_min:=abs(a[1]-a[2]);
for i:=2 to n-1 do
begin
  del:= abs(a[i]-a[i+1]);
    if del < del_min then
     begin
       del_min:=del;
       index:=i;
     end;
 end;
Writeln('1)Индексы двух ближайших элементов', index:4,(index+1):4);
v:=n div 4;
for i:=v+1 to 2*v-1 do
for j:=i+1 to 2*v do
if(a[i] mod 2 =1)and(a[j] mod 2 =1)and (1/a[i]<1/a[j]) then
 begin
  x:=a[i];
  a[i]:=a[j];
  a[j]:=x;
 end;
Writeln('2) Массив после сортировки ');
for i:=1 to n do  write(a[i]:4);
readln ;
end.

вторая часть написана, но она не работает

_____
Код программы нужно выделять (форматировать) тегами [CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 26.02.2018 в 10:42.
Родион Афанасьев вне форума   Ответить с цитированием
Старый 03.03.2018, 20:44   #2
СтудПом
Форумчанин
 
Регистрация: 08.11.2017
Сообщений: 354
Репутация: 114
По умолчанию

Цитата:
Сообщение от Родион Афанасьев Посмотреть сообщение
Упорядочить нечетные по значению элементы второй четверти массива
Ух, злобный препод
Попробуйте написать процедуру сортировки. Используйте любой метод, проще, наверное, будет метод пузырька. Потом посмотрите код - у вас будет цикл вложенный в другой цикл. Тела циклов вложите в if ... then, который проверяет не-чётность значения текущего элемента.
СтудПом вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите пожалуйста решить задачу. isyakin Помощь студентам 0 28.09.2013 20:10
нужно решить задачу,1 решил вторую не могу ,вот типа того должна выглядеть.. PROmot Помощь студентам 1 17.05.2012 10:12
Пожалуйста помогите решить задачу Answer26 Помощь студентам 1 23.12.2009 22:15
Помогите решить задачу, пожалуйста. Xenta Паскаль 1 25.05.2009 23:33
Помогите решить задачу, пожалуйста! Elizaveta Паскаль 1 10.11.2008 03:29


05:17.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru