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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 23.05.2011, 21:44   #1
prelest'
Пользователь
 
Регистрация: 23.05.2011
Сообщений: 34
По умолчанию посмотрите пжс прогу, чуток не работает

var
a:array[1..100] of reaL;
i,n,min:integer;
begin
write('Razmernost'' massiva: ');
readln(n);
for i:=1 to n do
readln(a[ i ]);
min := 0;
for i:=1 to n do
begin
if (i=n) and (a[ i ] < a[ i-1 ]) then min := i;
if (i < n) and (a[ i ] < a[ i-1 ])and(a[ i ] < a[ i+1 ]) then min := i;
end;
if min =0 then writeln('нету') else
writeln(a[min]);
end.

Дан массив размера N. Найти номер его первого локального минимума (локальный минимум это элемент, который меньше любого из своих соседей).
prelest' вне форума
Старый 23.05.2011, 21:59   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Зачем вы выводите a[min]? Номер же надо.
Что-то не очень понял, что вы в цикле делаете, но мне кажется, что должен быть 1 if, а не 2? т.е. как-то так.
Код:
if ... then 
    if ... then
    begin
       ...;
       ...;
    end;
И выходить из цикла, когда найден первый минимум (break).
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 23.05.2011 в 22:06.
Alex11223 вне форума
Старый 23.05.2011, 22:03   #3
stck
Пользователь
 
Аватар для stck
 
Регистрация: 14.06.2010
Сообщений: 84
По умолчанию

Цитата:
Сообщение от prelest' Посмотреть сообщение
меньше любого из своих соседей
Любого? Тогда при проверке AND замените на OR
stck вне форума
Старый 23.05.2011, 22:03   #4
prelest'
Пользователь
 
Регистрация: 23.05.2011
Сообщений: 34
По умолчанию

ну Алексей помоги пожалуйста тупой курице-мне...эту прогу правильно написать...как полностью будет правильно? от начала до конца
prelest' вне форума
Старый 23.05.2011, 22:04   #5
prelest'
Пользователь
 
Регистрация: 23.05.2011
Сообщений: 34
По умолчанию

Код:
var
a:array[0..1000] of reaL;
i,n,min:integer;
begin
 write('Razmernost'' massiva: ');
readln(n);
for i:=1 to n do 
readln(a[ i ]);
min := 0;
for i:=1 downto n do
begin
if (a[i]<a[i-1])or(a[i]<a[i+1])then min:=i;
end;
writeln(min);
end.
вот смотрите...что тут не хватает?
prelest' вне форума
Старый 23.05.2011, 22:07   #6
prelest'
Пользователь
 
Регистрация: 23.05.2011
Сообщений: 34
По умолчанию

var
a:array[1..1000] of real;
i,n,min:integer;
begin
write('Razmernost'' massiva: ');
readln(n);
for i:=1 to n do
readln(a[ i ]);
min := 0;

for i:=2 to N-1 do
if (a[i]<a[i-1])and(a[i]<a[i+1])then min:=i;

writeln('min = ',min);
end.


вот все правильный код, может в дальнейшем кому приголится)
prelest' вне форума
Старый 23.05.2011, 22:11   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
if (a[i]<a[i-1])and(a[i]<a[i+1])then min:=i;
Если любого из соседей, то or, а не and надо, как уже выше написали. Но мне кажется, вы условие неправильно переписали и должно быть меньше обоих соседей, тогда все правильно.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума
Старый 23.05.2011, 22:19   #8
prelest'
Пользователь
 
Регистрация: 23.05.2011
Сообщений: 34
По умолчанию

Ребят, а может мне безвозмездно решить вот эту задачку, если конечно вас не затруднит девушке помочь:
Дан целочисленный массив размера N. Удалить из массива все элементы, встречающиеся менее трех раз, и вывести размер полученного массива и его содержимое.
prelest' вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Посмотрите мою первую прогу(я новичок, не судите строго:)) просто Слава Софт 3 07.11.2010 12:49
Посмотрите на прогу я не знаю что уже делать(((( Krumyura Общие вопросы C/C++ 1 18.03.2010 22:37
Посмотрите программку...что-то не работает... J__S(Юляшка) Общие вопросы C/C++ 1 09.03.2010 19:42
посмотрите, пожалуста, что у меня не работает Grief Помощь студентам 2 26.01.2009 21:01
Посмотрите мою прогу LDA Софт 10 02.02.2008 21:04