Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.02.04;
Скачать: [xml.tar.bz2];

Вниз

Помогите плиз   Найти похожие ветки 

 
Генрих   (2007-01-18 10:47) [0]

Всем привет ! Помогите разобраться в программе.

     x:= p_s/(Sum-perVznos);
     a:=-1.5;

      repeat
        a:= a+ 0.00001;
        z:= 12*(a-1)/(1-Power(a,-12))-1 - x ;

        if (z>=-0.0005) and (z<=0.0005) then
           begin
             // Считаем эффективную ставку
             APR:= (a-1)* 1200;
             exit;
           end;

      until a=0;

     ShowMessage("Готово");

Тут вот какое дело, ShowMessage("Готово"); не срабатывает. Как сделать так, чтобы после того как сработает APR:= (a-1)* 1200;
цикл должен закончить работу. Если поместить ShowMessage сразу после APR:= (a-1)* 1200; тогда работет. Что делать, помогите плиз.


 
Плохиш ©   (2007-01-18 10:54) [1]

Надо, для начала, открыть справку для слова exit и внимательно, очень внимательно, прочитать для чего же оно в действительности преднозначено.


 
Сергей М. ©   (2007-01-18 10:55) [2]


> цикл должен закончить работу


Для этого существует оператор Break.
А Exit завершает текущую процедуру, а не текущий цикл.


 
Elen ©   (2007-01-18 10:57) [3]


>  Если поместить ShowMessage сразу после APR:= (a-1)* 1200;
>  тогда работет

Так почуму бы не поместить его туда? (и подумать о правильном выходе из цикла, ато этот вроде некошерный кокой-то)


 
ЮЮ ©   (2007-01-18 10:57) [4]

1) вместо exit (выход из процедуры) постовить break (выход из цикла)
2)
 try

 finally
    ShowMessage("Готово");
 end;

сработает и по exit и при AV :)


 
Генрих   (2007-01-18 11:02) [5]


> Так почуму бы не поместить его туда?


Нет, туда нельзя.


> Для этого существует оператор Break.


Пробывал. Не срабатывает. По любому сообщение не выходит.


 
Генрих   (2007-01-18 11:04) [6]

Опа, всё получилось. (Break) Exit - в топку.


 
icWasya ©   (2007-01-18 11:11) [7]

Вот это место
until a=0;
никогда не сработает

если вычислить  -1.5 + 0.00001 * 150000 даже с точностью Extended, то получится 2.22044604925031296E-16, а никак ни ноль.
Поставь условие выхода из цикла либо
until a>=0;
либо
until a>=0.000005;


 
Elen ©   (2007-01-18 11:15) [8]


> Нет, туда нельзя.

Why?


 
Плохиш ©   (2007-01-18 11:27) [9]


> Генрих   (18.01.07 11:04) [6]
> Опа, всё получилось. (Break) Exit - в топку.

Точно, яблоки - рулез, апельсины - в топку...


 
ЮЮ ©   (2007-01-18 11:34) [10]


>
> Точно, яблоки - рулез, апельсины - в топку...


У апельсинов хоть эфирное масло в кожуре. А какое топлипо из яблок?


 
Плохиш ©   (2007-01-18 11:47) [11]


> ЮЮ ©   (18.01.07 11:34) [10]

Яблочное вино видел, апельсинового - нет ;-)


 
Ega23 ©   (2007-01-18 12:01) [12]


> У апельсинов хоть эфирное масло в кожуре. А какое топлипо
> из яблок?


Из конских яблок - отличное топливо. Если высушить.


 
Alx2 ©   (2007-01-18 21:19) [13]

>Генрих   (18.01.07 10:47)  

Корни уравнения искать последовательным равномерным перебором - крайне неэффективно.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.02.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.049 c
15-1168625855
1-st...
2007-01-12 21:17
2007.02.04
SSL +delphi


2-1169234347
serko
2007-01-19 22:19
2007.02.04
Посоветуйте...


6-1156805841
ZLOFENIX
2006-08-29 02:57
2007.02.04
Socks5 прокси


3-1163412265
Kolan
2006-11-13 13:04
2007.02.04
Что делать с знаком при подстановке запроса?


15-1168698485
Гарри Поттер
2007-01-13 17:28
2007.02.04
Старый Новый год.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский