comp.lang.ada
 help / color / mirror / Atom feed
From: "Mich" <katho@tr.cgocable.ca>
Subject: Re: Here my package
Date: Wed, 04 Apr 2001 15:57:40 GMT
Date: 2001-04-04T15:57:40+00:00	[thread overview]
Message-ID: <UvHy6.320$A24.146429@carnaval.risq.qc.ca> (raw)
In-Reply-To: 9afek0$cnp$1@nh.pace.co.uk

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4820 bytes --]

the procedure need to be in the package 'cause in my principal program i
will call the Date_Valide



"Marin David Condic" <marin.condic.auntie.spam@pacemicro.com> a �crit dans
le message news: 9afek0$cnp$1@nh.pace.co.uk...
> Now you're getting somewhere. What is it you don't know how to do?
>
> To use the package in your procedure, you simply need to bring it in with
a
> context clause. Try this:
>
> with LesDates ;
> use LesDates ;
> procedure Date_Valide is
> begin
>     -- Your code here. You can call all your package
>     --  functions by name here as if they were declared
>     --  locally.
> end Date_Valide ;
>
> If you need something else, you'll have to explain what it is you need in
> more detail.
>
> MDC
> --
> Marin David Condic
> Senior Software Engineer
> Pace Micro Technology Americas    www.pacemicro.com
> Enabling the digital revolution
> e-Mail:    marin.condic@pacemicro.com
> Web:      http://www.mcondic.com/
>
> "Mich" <katho@tr.cgocable.ca> wrote in message
> news:hCGy6.263$A24.139307@carnaval.risq.qc.ca...
> > ok here my package and i need to create a procedure named Date_Valide
> > but i don't know how.   my package goes like that:
> >
> > PACKAGE lesdates IS
> >               TYPE Date IS RECORD
> >                  Jour : Natural;
> >                  Mois : Natural;
> >                  Ann�e : Natural;
> >                END RECORD;
> > FUNCTION Bissextile(Ann�e : IN Natural) RETURN Boolean ;
> > FUNCTION Jour_Max(Mois, Annee: IN Natural) RETURN Natural ;
> > FUNCTION Jour_De(La_Date : IN Date)RETURN Natural ;
> > FUNCTION Prem_Jour(An : IN Natural) RETURN Natural ;
> > END lesdates;
> >
> > ans my package body here:
> >
> > PACKAGE BODY lesdates IS
> > --PROCEDURE Date_Valide IS
> > FUNCTION Bissextile(Ann�e : IN Natural) RETURN Boolean IS
> >   BEGIN -- Bissextile
> >     IF (Ann�e REM 100) = 0 THEN
> >     -- un si�cle est bissextile s'il est divisible par 4
> >        RETURN (Ann�e REM 400) = 0;
> >     ELSE
> >     -- une ann�e ordinaire est bissextile si elle est divisible par 4
> >        RETURN (Ann�e REM 4) = 0;
> >     END IF;
> >   END Bissextile;
> >
> >   FUNCTION Jour_Max(Mois, Annee: IN Natural) RETURN Natural IS
> >   -- retourne le nombre de jours maximum dans un mois
> >   -- Gabrini p. 131
> >   BEGIN -- Jour_Max
> >     CASE Mois IS
> >       WHEN 1 | 3 | 5 | 7 | 8 | 10 | 12 => RETURN 31;
> >       WHEN 4 | 6 | 9 | 11 => RETURN 30;
> >       WHEN 2 => IF Bissextile (Annee) THEN
> >                    RETURN 29;
> >                 ELSE
> >                    RETURN 28; -- merci Auguste Cesar
> >                 END IF;
> >       WHEN OTHERS => RETURN 0;
> >     END CASE;
> >   END Jour_Max;
> >
> > FUNCTION Prem_Jour(An : IN Natural) RETURN Natural IS
> >     -- Retourne le premier jour de l'ann�e (dim = 0, ... , sam = 6)
> >     -- Valide en France � partir de 1583, en Angleterre � partir de
1752,
> >     --        en Russie � partir de 1918, en Gr�ce � partir de 1923
> >     -- Ant�c�dent : An est une ann�e valide
> >     -- Cons�quent : Prem_Jour est le premier jour de l'ann�e
> >
> >       Somme : Natural;
> >     BEGIN -- Prem_Jour
> >       Somme := An + ((An - 1) / 4) - ((An - 1) / 100) + ((An - 1) /
400);
> >       RETURN Somme REM 7;
> >     END Prem_Jour;
> >
> >   FUNCTION Jour_De(La_Date : IN Date)RETURN Natural IS
> >   -- Retourne le jour de semaine de la date (Jour, Mois, An)
> >   -- Ant�c�dent : la date est une date valide du calendrier gr�gorien
> >   -- Cons�quent : Jour_De est le jour de la semaine de la date
> >   --              dim = 0, ... , sam = 6
> >     Jour_Preced : ARRAY (1..12) OF Natural :=
> >                    (0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304,
> 334);
> >     Somme : Natural;
> >
> >   BEGIN -- Jour_De
> >
> >     Somme := Prem_Jour(La_Date.Ann�e) + Jour_Preced(La_Date.Mois)
> >              + (La_date.Jour - 1);
> >     -- correction pour les ann�es bissextiles
> >     IF Bissextile(La_Date.Ann�e) AND (La_Date.Mois > 2) THEN
> >        Somme := Somme +1;
> >     END IF;
> >     RETURN Somme  REM 7;
> >   END Jour_De;
> > --END Date_Valide;
> > END lesdates;
> >
> > "Ted Dennison" <dennison@telepath.com> a �crit dans le message news:
> > JsGy6.1512$jz.128569@www.newsranger.com...
> > > In article <0rGy6.262$A24.137061@carnaval.risq.qc.ca>, Mich says...
> > > >
> > > >i want to know how to create a procedure named Date_Valide with the
> three
> > > >functions in my package.
> > >
> > > Could you at try reposting it as plain text, rather than an
attachement?
> > My
> > > newsreader doesn't decode binary attachements.
> > >
> > > ---
> > > T.E.D.    homepage   - http://www.telepath.com/dennison/Ted/TED.html
> > >           home email - mailto:dennison@telepath.com
> >
> >
>
>





  reply	other threads:[~2001-04-04 15:57 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <0rGy6.262$A24.137061@carnaval.risq.qc.ca>
2001-04-04 14:46 ` Here my package Ted Dennison
2001-04-04 14:56   ` Mich
2001-04-04 15:29     ` Marin David Condic
2001-04-04 15:57       ` Mich [this message]
2001-04-04 16:15         ` Marin David Condic
2001-04-04 16:40     ` Jeffrey Carter
2001-04-04 17:06       ` Mich
2001-04-04 18:41         ` Stephen Leake
2001-04-04 22:06         ` Jeffrey Carter
2001-04-05  4:20     ` DuckE
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox