2014-11-03 4 views
0

Итак, я хочу, чтобы это нашло мне корни полинома. Тем не менее, каждый раз, когда я запускаю его, он никогда не дает мне никаких корней, даже если я использую очевидный, такой как 2x-2. Почему это не работает?Почему не будет найдено многомиллионное число маршрутов?

Input "Degree?",θ 
Disp "Left to right" 
Disp "coefficients" 
1→V 
For(Z,0,θ) 
Input A 
Q→R 
P→Q 
O→P 
N→O 
M→N 
L→M 
K→L 
J→K 
I→J 
H→I 
G→H 
F→G 
E→F 
D→E 
C→D 
B→C 
A→B 
If V=1 
Then 
A→S 
V=0 
End 
End 

For(T,–A,A) 
For(U,–W,W) 
If T≠0 
U/T→X 

RX+Q→Y 
YX+P→Z 
ZX+O→Y 
YX+N→Z 
ZX+M→Y 
YX+L→Z 
ZX+K→Y 
YX+J→Z 
ZX+I→Y 
YX+H→Z 
ZX+G→Y 
YX+F→Z 
ZX+E→Y 
YX+D→Z 
ZX+C→Y 
YX+B→Z 


If Z=0 
Then 
Disp X 
End 
End 
End 



prgmRESET 

СБРОС просто сбрасывает значения переменных. Что с этим не так?

ответ

2

Запрос: Я абсолютно не знаю, что операция вы работаете прочь, если вы могли бы порадовать состояние,

Наблюдение: Вы используете много переменных, которые не имели никакого значения, возложенные на них или изначально очищается, я вижу, что вы пытаетесь создать «поток» переменных для работы, но если вы сделаете это без очистки переменных раньше времени, вы создадите проблемы в своих последующих вычислениях.

Coding Рекомендации:

  • Вы состояния V = 0, который ничего не делает в этом контексте, вместо того, чтобы присвоить ей значение
  • Вы можете изменить 'Если T ≠ 0' в только 'если T'
  • В своем третьем выражении «For()» «W» не определен в коде.
  • Вы можете изменить 'Если Z = 0: Тогда: Disp X: End', ближе к концу вашего кода, в просто 'Если нет (Z: Disp X'
  • Move prgmRESET в верхней части программы
0

Чтобы быть честным, я не совсем уверен, как вы должны найти маршруты полинома. Ваша ошибка, скорее всего, происходит где-то в вашем беспорядке, назначая/переназначая/заменяя переменную. код с использованием списков вместо основных переменных.


Если все, что вы хотите сделать, это найти маршруты ap olynomial, я могу дать вам программу для этого.

:Prompt L1,X 
:Repeat 1=dim(L1 
    :dim(L1->dim(L3 
    :seq(L1(A)(Ans-A),A,1,Ans-1->L2 
    :Repeat abs(Ans)<10^(-7 
     :L1(1->L3(1 
     :For(A,2,dim(L1 
      :XL3(A-1)+L1(A->L3(A 
     :End 
     :Ans->B 
     :L2(1->L3(1 
     :For(A,2,dim(L2 
      :XL3(A-1)+L2(A->L3(A 
     :End 

     :Ans^-1(AnsX-B->X 
     :B 
    :End 
    :Disp X 
    :L1(1->L2(1 
    :For(A,2,dim(L1)-1 
     :XL2(A-1)+L1(A->L2(A 
    :End 
    :L2->L1 
:End 
0

Я не совсем уверен, что вы пытаетесь сделать здесь. Вы можете использовать целый много переменных, никогда не очищая или их определения, которые, вероятно, означает, что все ваши ценности будут равны 0.

Кроме того, рекомендация для будущих TI-BASIC вопросы:

Пожалуйста, объясните ваши переменные. Нет ничего хуже, чем наличие беспорядка переменных и ожидание чтения читателем детективной работы, чтобы узнать, что они должны делать. Кроме того, это полезно для вас, когда вы решите вернуться к нему для устранения неполадок.