FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Planétarium virtuel.
par Pedro Alvarez Sam 21 Juil 2018 - 16:57

» Roues dentées
par jean_debord Sam 21 Juil 2018 - 10:40

» Attention arnaque !
par mindstorm Jeu 19 Juil 2018 - 19:18

» Qui fait quoi ?
par silverman Mer 18 Juil 2018 - 15:21

» ITEM_SELECT N,L pour synedit
par silverman Mer 18 Juil 2018 - 15:20

» Boussole
par jean_debord Mer 18 Juil 2018 - 11:06

» Roue à n faces
par Marc Dim 15 Juil 2018 - 22:16

» Exemple d'une nouvelle version d'un GRID
par Jean Claude Ven 13 Juil 2018 - 10:32

» Une simple question
par Oscaribout Sam 7 Juil 2018 - 23:20

» BUG sur l'objet TAB
par Jack Sam 7 Juil 2018 - 21:12

» Monopoly moderne
par jjn4 Sam 7 Juil 2018 - 15:06

» Récapitulatif ludothèque panoramic jjn4
par jjn4 Ven 6 Juil 2018 - 17:41

» Lignes ondulées
par JL35 Ven 6 Juil 2018 - 17:39

» bug off_activate 0 : sans d'effet
par silverman Ven 6 Juil 2018 - 13:02

» Position des objets d'un conteneur dans FBPano et Panoramic
par Navigateur Ven 6 Juil 2018 - 12:59

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juillet 2018
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
CalendrierCalendrier

Partagez | 
 

 Traitement d'une fonction du second degré.

Aller en bas 
AuteurMessage
Pedro Alvarez

avatar

Nombre de messages : 1104
Date d'inscription : 19/01/2014

MessageSujet: Traitement d'une fonction du second degré.   Mar 20 Déc 2016 - 10:18

Bonjour.

Voici un petit programme de dessin d'une telle fonction, vite réalisé.
A adapter à votre gré.

Code:
dim a, b, c, crlf$, delta, k, maximum, ox, oy, x1, x2, y1, y2

maximize 0
2d_target_is 0

crlf$=chr$(10)+chr$(13)

ox=screen_x/2
oy=screen_y/2

' ax²+bx+c
' b² = 25
' 4ac = -24
' delta = 49
' x1 = (-5-7)/-4 = 3
' x2 = (-5+7)/-4 = 2/-4 = - 0.5
a=-2
b=5
c=3

delta=b*b-4*a*c

for x1=0 to ox*2 step 25
    2d_line x1,oy-5,x1,oy+5
    if mod(x1,5)=0 then print_locate x1-5,oy+10:print str$((x1-ox)/25)
next x1

for y1=0 to oy*2 step 25
    2d_line ox-5,y1,ox+5,y1
    if mod(y1,5)=0 then print_locate ox+10,y1-5:print str$((oy-y1)/25)
next y1

if delta>0
   k=0
  
   2d_line ox,0,ox,oy*2
   2d_line 0,oy,ox*2,oy
  
   2d_pen_color 255,0,0
   2d_pen_width 3
   for x1=-10 to 10 step 0.01
       k=k+1
       y1=a*x1*x1+b*x1+c
      
       x2=int(ox+x1*25)
       y2=int(oy-y1*25)
      
       if k=1
          2d_poly_from x2,y2
             else
          2d_poly_to x2,y2
       end_if
   next x1
end_if

x1=(0-b-sqr(delta))/(2*a)
x2=(0-b+sqr(delta))/(2*a)
maximum=x2-(x2-x1)/2

message "Delta= "+str$(delta)+crlf$+"x1= "+str$(x1)+crlf$+"x2= "+str$(x2)+crlf$+crlf$+"Maximum en ("+str$(maximum)+" ; "+str$(a*maximum*maximum+b*maximum+c)+")"

while 0=0
      x1=mouse_x_position(0)
      y1=mouse_y_position(0)
      
      x1=(x1-ox)/25
      y1=(oy-y1)/25
      
      caption 0,"x: "+str$(x1)+", y1: "+str$(y1)
      
end_while
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Ouf_ca_passe

avatar

Nombre de messages : 236
Age : 69
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

MessageSujet: Peux-tu peaufiner ?   Mar 20 Déc 2016 - 12:47

Bonjour Pedro

Peux-tu afficher dans un coin de l'écran la fonction et l'échelle ?
Pourra-t-on les modifier ?
Si tu sais faire du second degré, pourquoi pas du troisième ?

PS. Je ne suis pas arrivé à sortir par la croix.

Cordialement
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5980
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Traitement d'une fonction du second degré.   Mar 20 Déc 2016 - 13:04

Bonjour tout le monde.

@Ouf_ca_passe

Dans le code de Pedro Alvarz, il n’est pas prévu de sortir.
On se retrouve dans une boucle sans fin : while 0 = 0 .
La condition de la boucle étant toujours satisfaite jusqu’à la fin des temps, il faut attendre … la fin des temps !
Bon, il suffit d’insérer, avant end_while, la ligne if scancode = 27 then terminate.
De cette manière, un appui sur <ESC> permet de  revenir   au temps présent !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Contenu sponsorisé




MessageSujet: Re: Traitement d'une fonction du second degré.   

Revenir en haut Aller en bas
 
Traitement d'une fonction du second degré.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Résolu: coordonnée; degrés et minutes décimales, hddd mm mmm?
» RESOLU works suite 2004 (word) non installé ??
» nouvelle commande
» Couleur : traitement par Teinte, Saturation, Luminosité
» USBdrivers 221

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: