1

Bonjour,

Depuis longtps je n'ai pas développé sur tigcc.
Et je cherche à faire un programme qui renvoie juste la fonction suivante:
(racine(2)*e^(-x²/2))/(2*racine(pi))

Donc racine() c'est racine carrée et le e^ c'est exponentiel.
Et ce programme pourra être exploité pour être utilisé dans un programme en ti-basic, car il renvoie une équation (sous forme de chaine de caractère ou numérique).
Et hélas je dois le finir pour ce soir 00:00 sad
Merci !
Flo.
De retour dans la passé...

2

Pourquoi tu n'utilises pas directement le TI-BASIC ?

Tu dois te tourner vers math.h pour les fonction "racine carrée" (sqrt) et exponentielle (exp, je pense).
Et tu dois définir RETURN_VALUE pour pouvoir renvoyer une valeur. Il y a un exemple là-dessus dans la FAQ.
Tu dois également récupérer la valeur de x passé en argument, pour cela regarde dans args.h, et il doit y avoir des exemples là-dessus aussi dans la faq.
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

3

merci, je vais essayer d'exploiter cela
De retour dans la passé...

4

Ca avance super bien, j'ai bientôt finit.
Mais comment faire pour que le complateur n'ajoute pas le SAVE_SCREEN ? Car il n'est pas dans ma source C.
(J'ai la version 0.95 de tigcc)

Merci !
Flo.
De retour dans la passé...

5

Ok je viens de voir que c'est dans les options...
De retour dans la passé...

6

Maintenant je cherche comment avec ti-basic enregistrer cette valeur.
Car pour l'instant j'ai l'erreur suivante: invalide programme référence :s
De retour dans la passé...

7

Peux-tu reformuler ta question ?
Donne plus de précisions : dans quel contexte obtiens-tu l'erreur ?
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

8

Je faisais: "mon_progr(10.5)->a" en ti-basic et j'avais l'erreur Invalid program reference. J'ai donc installé un OS pour regler ce prob.

Comment on fait une intégrale ? hum2
De retour dans la passé...

9

Tu n'a surement pas installé un OS ca tu aurait du réenvoyer AMS et ca n'aurait rien changé. Tu as du envoyer un kernel (PreOS par exemple) smile.
Pour l'intégrale, j'ai trouvé ca dasn la doc de TIGCC:
// Calculate an integral and pretty print it

#define USE_TI89              // Compile for TI-89
#define USE_TI92PLUS          // Compile for TI-92 Plus
#define USE_V200              // Compile for V200

#define MIN_AMS 101           // Compile for AMS 1.01 or higher
#define SAVE_SCREEN           // Save/Restore LCD Contents

#include <tigcclib.h>         // Include All Header Files

// Main Function
void _main(void)
{
  TRY
    push_END_TAG ();
    push_quantum (VAR_X_TAG);
    push_parse_text ("1/((x-3)(x^2+4))");
    push_quantum (INTEGRATE_TAG);
    NG_rationalESI (top_estack);
    WinClr (DeskTop);
    Print2DExpr (Parse2DExpr (top_estack, FALSE), DeskTop, 0, 50);
  ONERR
    DrawStr (20, 20, "Error!", A_NORMAL);
  ENDTRY
  ngetchx ();
}
avatar
Wenn ich morgen meinem Gott gegenübertrete, kann ich ihm sagen: "Ich bin unschuldig, ich hab' niemandem etwas getan - außer mir selben" Und das verzeiht er mir offentlich !
Falco - Hans Hölzel 1957 - 1998
RIP

10

Pour l'intégrale, il peut y avoir mieux, dans les fonctions disponibles dans la table de ROM_CALLs seulement sur AMS 2.xx (mais elles existent forcément également sous AMS 1.xx). Voir push_def_int, par exemple.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.