04.02.2012, 14:17 | #21 (permalink) |
Member
Регистрация: 01.02.2012
Сообщений: 75
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
|
04.02.2012, 16:16 | #22 (permalink) |
Member
Регистрация: 01.02.2012
Сообщений: 75
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Zadanie_1 сработала на паскале на ура! А вот с остальными двумя не получаестя что-то. Если вводишь отрицательные числа, то все не пашет..вот это пишется -"Wrong X" до тех пор пока положительное число не введешь... а в первом и с отриц. и с положит. работает все
|
04.02.2012, 16:42 | #23 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Ну вот, здрасьте пожалуйста - приехали! Вы же сами настаивали, чтобы в программах была "проверка условия" - она и срабатывает. При вводе недопустимых значений Х появляется сообщение "Wrong X", т.е. "Неправильный Х", и надо ввести другой.
А вот какие значения являются допустимыми? Давайте разбираться. Во втором задании вычисляется функция ln(arctan(ln(x)/sqr(x))). Не забываем, что логарифм определен ТОЛЬКО для существенно-положительных аргументов. Отсюда сразу заключаем, что Х должен быть >0, поскольку в формуле стоит ln(x). Но мало того! Если 0<X<1, то логарифм будет отрицательным. Отрицательным же окажется и арктангенс, а он стоит под знаком другого, "внешнего" логарифма. Из всего этого следует, что допустимой областью является Х>1, что в программу и заложено. Аналогично в задании 3 фигурирует ln(x-1), откуда моментально следует, что X>1, что также заложено в программу. Между прочим, в задании 1 тоже есть ограничение. Соотношение параметра а и переменной х должно быть таким, чтобы выполнялось условие (х-а)>=0, поскольку в формуле фигурирует корень квадратный из (х-а), а извлекать квадратный корень из отрицательного числа нельзя. Это тоже заложено в программу. |
04.02.2012, 17:11 | #24 (permalink) |
Member
Регистрация: 01.02.2012
Сообщений: 75
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
А ну тогда все понятно. Спасибо большое что просвятили. Теперь немного понимать начала что о чем. =) запутал меня препод со своими отрицательными числами и проверками условий...
|
07.02.2012, 17:37 | #25 (permalink) |
Member
Регистрация: 01.02.2012
Сообщений: 75
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
СЕгодня показала работу, в общем сбили мне программу....там какие то цифпы вставил в значения и все кирдык, сбилось все, ответа не получился....
и сказали что не так, слишком мудрено и догадались что не я сделала а кто то спец, там я так и знала что поменьше нужно строк |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
07.02.2012, 17:39 | #26 (permalink) |
Member
Регистрация: 01.02.2012
Сообщений: 75
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Сбили мне программы все и по этим заданиям и по тем с табулированием..... вставили какие то значения и ответ не дал, короче не то что то там... и сразу догадались что не я сделала там слишком мудрено, должно было быть попроще все оказывается,а я не знала...так что сама заварила кашу сама и буду расхлебывать...а вам огромное спасибо что помогли все равно
|
09.02.2012, 20:01 | #28 (permalink) |
Member
Регистрация: 01.02.2012
Сообщений: 75
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
здесь в задании y:=sqrt(x-a)+(1/(x+c)) - когда вводишь c=3, x=-3. a=-10. получается на ноль делить нельзя, и сбиватеся, как сделать чтобы не сбивалось?
а в этом ln(arctan(ln(x/sqr(x)))) неправилно сосnавлено говорили, как это??? все же правильно.... и в этом где exp(q/4*ln(x+3))+exp(1/6*ln(x-1)) - отриц. числа не идут. |
09.02.2012, 20:41 | #30 (permalink) | ||
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Код:
program zadanie_1; var x,a,c: integer; y: real; begin write('Vvedite A - '); readln(a); write('Vvedite C - '); readln(c); Repeat write('Vvedite X - '); readln(x); if ((x-a)<0) or ((x+c)=0) then writeln('Wrong X'); Until ((x-a)>=0) and ((x+c)<>0); y:= sqrt(x-a)+(1/(x+c)); Writeln('Y = ',y:6:2); Readln; end. Цитата:
y:= ln(arctan(ln(x)/sqr(x))); а у Вас что? Сверьте расстановку скобок!И не должны! Если задать х<1, в том числе отрицательный, то под знаком второго логарифма будет стоять отрицательное число, что недопустимо. Еще раз повторяю - функция логарифм определена только для СТРОГО положительных аргументов, ни отрицательные, ни нули там НЕ ДОПУСКАЮТСЯ. Затем и проверка поставлена. |
||
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|