cancel
Showing results for 
Search instead for 
Did you mean: 
JKova
Level 4
138 92 2 5
Message 1 of 5
6,944
Flag Post

Solved!

I have problem entering in programme which create folder

HP Recommended
HP 50g

dear HP community ,

because my authentication failed I have no idea why this **bleep** is happening , i will be short this time .

I would ask you why is my code not good enough to work wuth my program second time when I start it .

First time when I used it it works fine but now ( second time or whatever time you used IF you create directory which have a same name like PVEL and it is not empty ) because of my bad experience with directory or something else did not work . The directory which I made is PVEL .

I use this input variables

If you use this it will work fine ... by only first timeIf you use this it will work fine ... by only first timeBut if you ran program at second times this will happen after entry point ...But if you ran program at second times this will happen after entry point ...Entry point ... no matter waht you  choose it's all the same !!!Entry point ... no matter waht you choose it's all the same !!!

«
  IFERR 'PVEL' CRDIR
  THEN { PVEL } PGDIR
  END 'PVEL' CRDIR PVEL 256. ATTACH STD DEG "Unutarnji pravci - UNOS u:" { {
"DMS kutevi"
  « 1. 'odb' STO
  » } { "Decimalni kutevi"
  « 0. 'odb' STO
  » } } 1. CHOOSE DROP EVAL Ť NEPKOORD od do L sirina
  « 1. od SIZE 1. GET
    FOR i NEPKOORD 2. od { i 1. } GET * 1. - 1. 2. ŤLIST GET NEPKOORD 2. od { i
1. } GET * 1. 2. ŤLIST GET NEPKOORD 2. do { i 1. } GET * 1. - 1. 2. ŤLIST GET
NEPKOORD 2. do { i 1. } GET * 1. 2. ŤLIST GET Ť x0 y0 xi yi
      « xi x0 - yi y0 - Ť dx dy
        « dx dy SQ SWAP SQ + ƒ 'd' STO dy d SQ / 206265. * dx d SQ / -206265. *
Ť ai bi
          «
            IF ai 0. > 'bi*-1.' 0. > AND
            THEN ai bi -1. * / ATAN
            ELSE
              IF ai 0. > 'bi*-1.' 0. < AND
              THEN ai bi -1. * / ATAN 180. +
              ELSE
                IF ai 0. < 'bi*-1.' 0. > AND
                THEN ai bi -1. * / ATAN 360. +
                ELSE
                  IF ai 0. < 'bi*-1.' 0. < AND
                  THEN ai bi -1. * / ATAN 180. +
                  ELSE
                  END
                END
              END
            END "ni" i + S~N STO "ni" i + S~N ŤNUM Ť ni
            «
              IF odb 0. ==
              THEN ni L { i 1. } GET -
              ELSE
                IF odb 1. ==
                THEN ni L { i 1. } GET HMSŤ -
                END
              END Ť ni2
              «
                IF ni2 0. <
                THEN ni2 360. +
                ELSE ni2
                END Ť NI
                « NI ŤNUM "NI" i + S~N STO "NI" i + S~N ŤNUM
                  IF i sirina MOD 0. ==
                  THEN sirina ŤLIST …LIST sirina /
                  ELSE
                  END Ť A
                  « A ŤNUM
                    IF i sirina MOD 0. ==
                    THEN "ZT" i sirina / + S~N STO
                    END
                  »
                »
              »
            »
          »
        »
      »
    NEXT 1. od SIZE 1. GET
    FOR i "NI" i + S~N ŤNUM
    NEXT od SIZE 1. GET 1. 2. ŤLIST ŤARRY 'kutnLi' STO 1. od SIZE 1. GET sirina
/
    FOR i "ZT" i + S~N ŤNUM { sirina 1. } 1. CON *
      IF i 2. Š
      THEN AUGMENT
      END
    NEXT 'zei' STO 1. od SIZE 1. GET
    FOR i "ni" i + S~N ŤNUM
    NEXT od SIZE 1. GET 1. 2. ŤLIST ŤARRY 'ni' STO kutnLi zei - 'minl' STO
"Ispis vektora prik. mjerenja u:" { { "dec. stupnjevima"
    « minl ŤNUM 'minl' STO
    » } { "DMS formatu"
    « minl minl SIZE 1. GET 1. ŤLIST RDM AXL ŤHMS AXL minl SIZE 1. GET 1. 2.
ŤLIST RDM 'minl' STO
    » } { "u lucnim sekundama"
    « minl ŤNUM 3600. * 'minl' STO
    » } } 1. CHOOSE DROP EVAL "Ispis kuta nŚi :" { { "dec. stupnjevima"
    « ni ŤNUM 'ni' STO
    » } { "DMS formatu"
    « ni ni SIZE 1. GET 1. ŤLIST RDM AXL ŤHMS AXL ni SIZE 1. GET 1. 2. ŤLIST
RDM 'ni' STO
    » } { "u lucnim sekundama"
    « ni ŤNUM 3600. * 'ni' STO
    » } } 1. CHOOSE DROP EVAL "Ispis kuta nŚi-Śi :" { { "dec. stupnjevima"
    « kutnLi ŤNUM 'kutnLi' STO
    » } { "DMS formatu"
    « kutnLi kutnLi SIZE 1. GET 1. ŤLIST RDM AXL ŤHMS AXL kutnLi SIZE 1. GET 1.
2. ŤLIST RDM 'kutnLi' STO
    » } { "u lucnim sekundama"
    « kutnLi ŤNUM 3600. * 'kutnLi' STO
    » } } 1. CHOOSE DROP EVAL "Ispis vek. zi*e dim n*uzx1 :" { { "dec.
stupnjevima"
    « zei ŤNUM 'zei' STO
    » } { "DMS formatu"
    « zei zei SIZE 1. GET 1. ŤLIST RDM AXL ŤHMS AXL zei SIZE 1. GET 1. 2. ŤLIST
RDM 'zei' STO
    » } { "u lucnim sekundama"
    « zei ŤNUM 3600. * 'zei' STO
    » } } 1. CHOOSE DROP EVAL "Izbrisati pomocne velicine:" { { "DA"
    « 1. od SIZE 1. GET sirina /
      FOR i "ZT" i + S~N
      NEXT 1. od SIZE 1. GET
      FOR i "ni" i + S~N
      NEXT 1. od SIZE 1. GET
      FOR i "NI" i + S~N
      NEXT od SIZE 1. GET 2. * od SIZE 1. GET sirina / + ŤLIST PURGE
    » } { "NE"
    « 0. 'ODB' STO
    » } } 1. CHOOSE DROP EVAL { odb d } PURGE UPDIR
  »
»

this signs in code ARE used

Ť ƒ instead od right arrows for create local variables and square root sign .

 

Thank you and Have I nice day !!

 

JK

 

 

0 Kudos
Tags (1)
4 REPLIES 4
Joe_Horn
Level 8
628 615 119 211
Message 2 of 5
Flag Post
HP Recommended

I would suggest "single-stepping" your program. Instead of running your program directly, put its name on the stack and execute DBUG, then use the SST or SST↓ menu keys to execute it one step at a time. (Menu access: PRG, NXT NXT, RUN).  This is a powerful way to follow a program's progress and find exactly where and why it's not running as expected.

 

Disclaimer: I don't work for HP. I'm just another happy HP calculator user.

-Joe-
0 Kudos
David_M
Level 6
140 139 29 60
Message 3 of 5
Flag Post
HP Recommended

Although I don't understand what your program is doing, I believe your initial IFERR structure is intended to delete the PVEL directory if it already exists.  If I am correct, then I suggest you change this part

  IFERR 'PVEL' CRDIR
  THEN { PVEL } PGDIR
  END

...to this:

  IFERR 'PVEL' PGDIR THEN END

If the PVEL directory already exists when you start the program, your original version leaves an extra 'PVEL' on the stack.  This is throwing off the expected stack contents for the rest of the program.  The second version leaves nothing on the stack, regardless of whether the directory already existed.

 

You can see this by inserting a HALT command immediately following the IFERR..END structure, then running the program multiple times to observe the stack contents.

 

Hopefully I've understood your intent correctly.  If so, I believe the above fix will work for you.

Tags (1)
JKova
Author
Level 4
138 92 2 5
Message 4 of 5
Flag Post
HP Recommended

OK thank you for your advice but let me know that I don't know how to solve it anyway .

So I create program from field of Analyses and processing of land surveying measurments.

So program calculates vector of diminution measurments , the element of uknown orientation of interior angle Z - angle 

( interior angle means measurment from unknown point by coordinates to known point which coordinates ( x,y ) are known . Or this is angle by definition beetwen two by coordinates uknown points ) .

Program also calculates diference beetwen bearing angle and measured angle ( alpha ) of interior angle ( in vector form ) and approximately bearing angle from each measurment .

OF course the last data I forget to remember is vektor Z*ei , it is vector who speak which measurments contains uknown element of orientation interior angle .

 

So input data is :

1. Vector of uknowns (NEPKOORD ) ( because this is only for singular network adjustment ) .

These vector contains uknown coordinates that are approximately determined near the "real" value of coordinates of points ( X , Y )

The vector of uknowns must be written only at this type of format [[ x1] [y1] [ x2 ] [ y2 ] ... ... [ xn ] [ yn ]] , dimensions of these vector is (2*n)x1 , where n is number of points included in adjustment

 

2. vector FROM ( od ) which represent from which index of point is going to be measured inner line ( inner angle actually ).

Index of point means number of point you type at the Vector of uknowns e.g. if you want to measure inner line ( inner angle ) from point you type as second in vector of uknowns , just type [[2]] , and If I want to add as example second measurement from point 4 , and third measurment from point 3 . All that points FROM are contained in one vector who has output dimension nx1 , n is number of measurements in this case . So in my case if I had those three measurment FROM points 2 , 3 and 4 i would type [ [2] [3] [4] ] in vector FROM , local variable od

 

 

3. vector TO ( do - local variable name ) . All same like vector FROM ( od - local variable name ) but in this case you enter ID - s of point toward is inner angle ( line in geodesy ) measured . 

 

Let me resume , If I had three measured inner angle , first angle as exaple from point 2 to point 4 , second inner angle from point 4 to point 1 , and third measured angle from point 3 to point 2 i will have two vectors FROM and TO with dimensions 3x1 ( 3 is number of measurments at interior angles ( or lines ) ). 

 

vector FROM (od ) form is :

[[2] [4] [3] ]

vector TO ( do ) form is :

[ [4] [1][ 2] ] 

in upper case .

 

4. Input is vector od measurments ( L ) , dimensions are nx1 n is number of measurment .

Just type your measurment in every cell of vector . You CAN CHOOSE in program IF your measurments are in HH.MMSS format or decimal format .

 

 

5. the length number 

how many measurment are occupied by one element of uknown orientation of 0° angle of horizontal circle in the instrument ( uknown Z angle ) . This number must be able to divide number of measurements ( n in dimensions ) with no rest .  

 

Ok just type in following order if you not understand i will send you one picture .

But with no these stuff about directory program looks fine , so when I added this sort of code above my program something changes ( on second time start IF directory PVEL exist after runing program first time and is NOT EMPTY directory ) ... I get an GET error , I don't know why and how to fixed it ... you know ... i count of this code ...

<< IFERR 'PVEL' CRDIR
  THEN { PVEL } PGDIR
  END 'PVEL' CRDIR PVEL
  256 ATTACH 
  --> NEPKOORD od do L sirina 
  << @ bla bla bla ... coding algorythm
@ END of program 
>>
 >>

 

 

0 Kudos
JKova
Author
Level 4
138 92 2 5
Message 5 of 5
Flag Post
HP Recommended
Thank you ,
Very much I supposed to say ,
I tried same thing on another shorter programme .
This works all fine .

Thank you , 😃

Best regards ,
J.K.
0 Kudos
† The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the Terms of Use and Rules of Participation