chinellatomarco Inserito: 28 giugno 2017 Segnala Share Inserito: 28 giugno 2017 Ciao ragazzi qualcuno di voi sa se è possibile fare un'approssimazione per eccesso con cp1l-em? Devo eseguire una divisione e se il risultato del Resto è maggiore o uguale a 5 devo approssimare a "+1" il Quoziente. Purtroppo usando "/" o "/L" il risultato è il semplice valore del quoziente che non considera il resto e l'approssimazione. Grazie a tutti Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 28 giugno 2017 Segnala Share Inserita: 28 giugno 2017 Non è vero. La / (come la /L per le doppie word) ti dà il risultato ma anche il resto. Mette il risultato nella word destinazione, e il resto in quella successiva (occhio quindi che occupa due word in uscita!). Quindi basta guardare la word+1 e se è diversa da 0, è il resto e se maggiore o uguale a 5, sommi 1 alla prima word. Link al commento Condividi su altri siti More sharing options...
chinellatomarco Inserita: 28 giugno 2017 Autore Segnala Share Inserita: 28 giugno 2017 Ciao Andrea, avevo guardato anch'io nell wod+1 perchè come scritto nella guida istruzione è il resto ma sinceramente mi trovo dei valori strani che non riesco a interpretare. Comunque ho risolto facendo un giro un pò più largo tramite FIX E FLTL e sommando 0,5 al risultato...Non riuscivo proprio a capire come interpretare la word del resto, non mi dava dei valori corretti. Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 28 giugno 2017 Segnala Share Inserita: 28 giugno 2017 Questo non mi torna. Deve dare risultati corretti. Ho provato in simulazione, divido 5 per 3, ottengo 1 e resto 2, come giusto che sia. Non è che per caso hai la visualizzazione in BCD o esadecimale? Link al commento Condividi su altri siti More sharing options...
chinellatomarco Inserita: 28 giugno 2017 Autore Segnala Share Inserita: 28 giugno 2017 che strano...no ho messo la visualizzazione in UINT O UDINT, scusa magari mi sto perdendo nel nulla ma 5/3 fa 1.6666.... Perché é giusto che il resto ti dia 2? Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 28 giugno 2017 Segnala Share Inserita: 28 giugno 2017 Perché il 3 nel 5 ci sta una volta e resta fuori 2. E' matematica dei numeri interi. Quella che fai tu è invece di quelli irrazionali, o in virgola mobile. Ti da 1 (parte intera) e 0.6666 (parte decimale), ma non è la stessa cosa... Per quel che vuoi far te, è più utile usare la virgola mobile, in modo che arrotonda da solo. Link al commento Condividi su altri siti More sharing options...
chinellatomarco Inserita: 28 giugno 2017 Autore Segnala Share Inserita: 28 giugno 2017 ok tutto chiaro, ma per arrotondare c'è qualche istruzione particolare o meglio sommare +0.5 e poi arrotondo? Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 28 giugno 2017 Segnala Share Inserita: 28 giugno 2017 No. La FIX è praticamente un troncamento, per cui l'unica è sommare 0,5. Nel Sysmac Studio - NJ, invece, arrotonda regolarmente. Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora