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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2011, 21:40   #11
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Метод пузырька
Но по условию же вам вроде не это надо?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 16.05.2011 в 21:43.
Alex11223 вне форума Ответить с цитированием
Старый 16.05.2011, 21:41   #12
merch
Новичок
Джуниор
 
Регистрация: 16.05.2011
Сообщений: 16
По умолчанию

Задумывалось так, что редактироваться будут только положительные элементы массива. Но как это реализовать, вот сижу думаю... Вдруг кто подскажет
merch вне форума Ответить с цитированием
Старый 16.05.2011, 21:43   #13
merch
Новичок
Джуниор
 
Регистрация: 16.05.2011
Сообщений: 16
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
ну неправельно меня поняли, у меня он есть, пример решенный этом методом есть:

Код:
Program lab_3;
uses crt;

type massiv=array[1..10] of real;

var

y:massiv;
s:real;
i,j:integer;

const
 x:massiv=(3.5, -7.4, 1.7, 12.9, -5.6, 21.3, -8.6, 4.5, 0.6, 2.5);
 n=10;
 begin
 
 for j:=1 to n-1 do
 for i:=1 to n-j do
 if x[i]<x[i+1] then
 begin
 
 s:=x[i];
 x[i]:=x[i+1];
 x[i+1]:=s;
 end;
 
 begin
 
 for i:=1 to 10 do
 writeln(massiv[i])
 end.
программа тупит, не может присвоить это
Код:
x[i]:=x[i+1];
merch вне форума Ответить с цитированием
Старый 16.05.2011, 21:44   #14
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
function FindFirstPositiveNumber(theArray: TArray): integer;
var
   i: integer;
begin
   i:= 1;
   while ((i <= CSize) and (theArray[i] < 0)) do
      inc(i);

   if (i <= CSize) then
      FindFirstPositiveNumber:= i
   else
      FindFirstPositiveNumber:= 0;
end;
чего делает эта функция в проге N1 знаешь7 если да то напиши аналогичное без функции) если нет то она возвращает № 1-го положительного числа в массиве вот с него и надо сортировать) но писать тебе все равно самому)
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 16.05.2011, 21:45   #15
merch
Новичок
Джуниор
 
Регистрация: 16.05.2011
Сообщений: 16
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
Код:
function FindFirstPositiveNumber(theArray: TArray): integer;
var
   i: integer;
begin
   i:= 1;
   while ((i <= CSize) and (theArray[i] < 0)) do
      inc(i);

   if (i <= CSize) then
      FindFirstPositiveNumber:= i
   else
      FindFirstPositiveNumber:= 0;
end;
чего делает эта функция в проге N1 знаешь7 если да то напиши аналогичное без функции) если нет то она возвращает № 1-го положительного числа в массиве вот с него и надо сортировать) но писать тебе все равно самому)

Я прекрасно понимаю что она делает) проблема в том что я не смогу объяснить преподователю как эта процедура работает...
merch вне форума Ответить с цитированием
Старый 16.05.2011, 21:47   #16
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
Я прекрасно понимаю что она делает) проблема в том что я не смогу объяснить преподователю как эта процедура работает...
напиши аналогичное сам
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 16.05.2011, 21:48   #17
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
программа тупит, не может присвоить это
Вы x и y перепутали. х у вас конст.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 16.05.2011, 22:06   #18
merch
Новичок
Джуниор
 
Регистрация: 16.05.2011
Сообщений: 16
По умолчанию

Всё, разобрался в первом варианте программы, единственный вопрос - какая роль отведена этому куску кода:

Код:
function FindFirstPositiveNumber(theArray: TArray): integer;
var
   i: integer;
begin
   i:= 1;
   while ((i <= n) and (theArray[i] < 0)) do
      inc(i);

   if (i > n) then
      FindFirstPositiveNumber:= 0
   else
      FindFirstPositiveNumber:= i;
end;
а конкретно этим строкам:

Код:
if (i > n) then
      FindFirstPositiveNumber:= 0
   else
      FindFirstPositiveNumber:= i;
end;
merch вне форума Ответить с цитированием
Старый 16.05.2011, 22:13   #19
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Если не найден - вернуть 0, а если найден - его позицию.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 16.05.2011, 22:19   #20
merch
Новичок
Джуниор
 
Регистрация: 16.05.2011
Сообщений: 16
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Если не найден - вернуть 0, а если найден - его позицию.
То есть он проходит таким образом по всем элементам массива, нужные включает в список, а когда уже номер элмента (i) превышает колличество элементов массива (максимальное), на этом процесс стопорится. Правельно?
merch вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В массиве из n элементов подсчитать количество четырёд идущих подряд одинаковых элементов ( Delphi7 ) Анастасья Помощь студентам 1 31.03.2011 19:23
Четность элементов в массиве Pascal Brian Spilner Помощь студентам 8 02.08.2010 21:22
В массиве из п элементов много совпадающих элементов. Найти количество различных элементов Strax Фриланс 11 12.06.2010 20:13
В массиве A, состоящем из 10 элементов, подсчитать количество положительных элементов Alex61 Помощь студентам 5 16.05.2009 23:06
В одномерном массиве, состоящем из n вещественных элементов, вычислить сумму элементов массива HazelHen Общие вопросы C/C++ 2 29.03.2009 15:16