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
» I Love You
par JL35 Jeu 19 Oct 2017 - 16:25

» MARK_ON déclenche un événement ON_CLICK à la place de ...
par Jean Claude Mer 18 Oct 2017 - 18:08

» mise a jour calculatrice
par joeeee2017 Mer 18 Oct 2017 - 15:57

» [solved] 3D_LINE How to ?
par Jicehel Mer 18 Oct 2017 - 11:01

» Convertisseur de base 10 de 2 à 36
par gigi75 Mar 17 Oct 2017 - 18:49

» calculatrice avec touches movibles
par joeeee2017 Dim 15 Oct 2017 - 1:11

» CORTANA
par gigi75 Sam 14 Oct 2017 - 16:32

» Calculatrice
par Jean Claude Sam 14 Oct 2017 - 12:30

» Compilateur FBPano
par jean_debord Jeu 12 Oct 2017 - 9:53

» KGF_dll - nouvelles versions
par Klaus Mar 10 Oct 2017 - 18:49

» à propos de Panoramic_Editor [Résolu]
par Klaus Mar 10 Oct 2017 - 3:19

» Un petit "coucou" à tous les Panoramiciens !
par Jack Ven 6 Oct 2017 - 10:24

» Pourquoi le compilateur stagne
par mindstorm Mer 4 Oct 2017 - 20:38

» Panoramic ?
par Marc37 Mer 4 Oct 2017 - 0:39

» Premiers pas avec Arduino
par Marc37 Mer 4 Oct 2017 - 0:29

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

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

Partagez | 
 

 Défi avec panoramic.

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
pan59

avatar

Nombre de messages : 367
Age : 60
Localisation : Wattignies
Date d'inscription : 16/10/2011

MessageSujet: Défi avec panoramic.   Jeu 11 Juil 2013 - 10:27

Bonjour.

Je lance un véritable défi aux panoramiciens.

Voici un petit programme écrit en ThinBasic.

Le fichier, de 41.720 lignes, est lu dans son intégralité, 10 fois en 8 dixièmes de seconde !!

Qui peut faire mieux ?


Code:
Uses "fileline"
Uses "console"

Dim i%, n%  
Dim a As String

Dim t1, t2 As Double

t1 = Timer

For c As Integer=1 To 10
  
   ' 41.720 lignes
   n% = FileLine_Open("c:\perso\traducteur_panoramic\dico_français_espagnol.txt")

   While Not FileLine_IsEof(n%)    
  
         i% = FileLine_LineInput(n%, a)
  
         ' Console_WriteLine(a)            
 
   Wend

   FileLine_Close(n%)

Next  

t2=Timer

MsgBox(0, "Seconds:" & $TAB  & $TAB & Format$(t2 - t1, "#0.000"))
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5858
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Défi avec panoramic.   Jeu 11 Juil 2013 - 11:46

Je ne comprends pas bien ton défit. Il faut traduire le programme en Panoramic et faire en sorte que le fichier soit lu 10 fois le plus rapidement possible en le lisant ligne par ligne, c'est cela ?

En fait la syntaxe en Panoramic est très proche de celle de ThinBasic

Pour le chronomètre, à la place du T1 = Timer tu mets:

Code:

Label On
Dim Tps%
Tps%=0 : timer 1:timer_interval 1,10:on_timer 1,On

Tu dois aussi ajouter la procédure On

Code:

On:
  Tps%=Tps%+1
Return

Après la boucle, calcule et affiche les valeurs obtenues
Code:

  mn%=int(Tps%/3600)
  s%=int(Tps%/60)-(mn%*60)
  cs%=Tps% -((mn%*3600)+(s%*60))
  ' Affiche les valeurs à l'aide d'un message

Pour le fichier, tu sais faire mais bon je remets la syntaxe qui me parait correcte

Code:

dim a$,c%
For c%=1 To 10
  file_open_read 1,""c:\perso\traducteur_panoramic\dico_français_espagnol.txt""
  while file_eof(1) <> 1
    file_readln 1,a$:print a$
  end_while
  file_close 1
Next c%

Mais bon, ça sera sans doute plus long que 8 dixième de seconde. Je ne peux pas tester ici, mais le défit n'est pas trop compliqué après, je ne pense pas que l'on puisse faire grand chose de plus pour accélérer les choses.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10074
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Défi avec panoramic.   Mer 17 Juil 2013 - 22:57

Pour que la mesure soit comparable, il faut mettre la commande PRINT en commentaire, tel que c'est fait dans le programme ThinBasic. Car sinon, les milliers de PRINT mangent ENORMEMENT de temps !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé




MessageSujet: Re: Défi avec panoramic.   

Revenir en haut Aller en bas
 
Défi avec panoramic.
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Un exemple de gestion d'un sprite vaisseau avec panoramic
» Choix d'un répertoire
» Sub-menu is not menu avec Panoramic.exe
» envoyer un mail avec panoramic et blat
» Une base de données relationnelle avec Panoramic

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: