begin process at 2010 02 10 06:46:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Delphi

 > 

Archives

 > 

J'AI BESOIN D'AIDE !!!! :O

 > 

probleme quand je creer ma procedure


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

probleme quand je creer ma procedure

mercredi 19 janvier 2005 à 21:19:36 | probleme quand je creer ma procedure

damomospike

bonjour a tous!

voila je voulais apprendre à creer ma propre procedure, en cherchant j'ai a peut prés trouvé se qu'il falait faire mais y me manque quelque chose puisque mon code plante!
le voici:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Déclarations privées }
    procedure cucou(var nbr1: integer ; nbr2: integer ; result: integer);
  public
    { Déclarations publiques }
  end;

var
  Form1: TForm1;
  nbr : integer;

implementation

{$R *.dfm}
procedure cucou(var nbr1: integer ; nbr2: integer ; result: integer);
begin
result := nbr1*nbr2;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
cucou(3,4,nbr);
showmessage(inttostr(nbr));
end;

end.

quand je lance le code, je eçois l'erreur: [Erreur] Unit1.pas(35): Les types des paramètres VAR originaux et formels doivent être identiques.

je ne vois pas ce qu'il faut faire.
je vous remercie de vos réponse

mercredi 19 janvier 2005 à 22:07:12 | Re : probleme quand je creer ma procedure

sim51

Membre Club
C'est normal, tu utilise mal le mot var dans les procédures. En effet tu dois l'utiliser quand tu change la valeur de la variable dans ta procédure. Or tu ne change pas tes Nb1 et Nb2 tandis que tu change ton result.
Donc au lieu de procedure cucou(var nbr1: integer ; nbr2: integer ; result: integer) tu dois mettre procedure cucou( nbr1: integer ; nbr2: integer ; var result: integer) 
( tu peux même écrire
procedure cucou( nbr1,nbr2: integer ;var  result: integer))
Tu avais une erreur car puisque nbr2 était déclaré comme étant une variable, quand tu appelais ta procédure cucou(3,4,nbr), 3 et 4 son des integers et pas des variables !!
Je te conseil de revoir tes cours de pascal ou d'acheter un livre sur le pascal, pour apprendre les bases ( il y a une section livre sur le site ).
Voilà, bon courage et bonne prog !!
N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!
mercredi 19 janvier 2005 à 22:09:27 | Re : probleme quand je creer ma procedure

sim51

Membre Club
Réponse acceptée !
Heu j'ai oublié aussi de te dire qu'il fallait aussi écrire quand tu implémente ta procédure d'écrire Tform1.cucou(nbr1, nbr2: integer ; var result: integer);
begin
result := nbr1*nbr2;
end;
En effet tu as déclaré ta procédure en privé ( si tu l'avais mise en public tu n'aurais pas eu ce prob )

N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!
mercredi 19 janvier 2005 à 22:11:03 | Re : probleme quand je creer ma procedure

JulioDelphi

Membre Club Administrateur CodeS-SourceS
hello,

procedure
cucou(nbr1, nbr2: integer;var result: integer);

begin
 result := nbr1 * nbr2;
end;

ou

function
cucou(nbr1, nbr2: integer;): Integer;

begin
 result := nbr1 * nbr2;
end;

à utiliser comme ceci :

nbr := cucou(3,4);


toi c'est ton VAR qui est mal placé, et comme tu vois tu peux faire "a, z, e, r, t, y: integer" au lieu de "a: integer, z: integer, e: integer..."
a+


Cette discussion est classée dans : creer, end, var, integer, procedure


Répondre à ce message

Sujets en rapport avec ce message

TStringGrid + TScrollBox : petit pb de décalage [ par delphi5user ] Bonjour à vous.Je vais essayer d'explique mon problème clairement.J'ai fait un Form avec un TScrollBox, 2 TStringGrid (1 pour les titres, un pour les besoin d'aide sur arbre et récursivité SVP [ par garcimore ] Je débute sur la récursivité, les pointeurs et les arbres.J'avoue que je trouve ça hard. J'utilise le pas à pas pour bien me représenter ce que cela d Convertissent une source [ par tairodel ] TAIROdel Qui je convertissent une source de DOS de Delphi en source de GUI de Delphi program SMTPserver; {$DEFINE Debug} {$IFDEF Debug} &nb IdSMTPServer + Client IdSMTP = 0 Mails [ par BenXbox ] Salut à tous, J'ai un pb, j'ai créer un serveur avec le IdSMTPServer et quant j'envoie un mail avec un client mail que j'ai fait avec le IdSMTP1 ça s Détecter quand un utilisateur appuie sur le bouton Power (marche\arret) du pc [ par Millenod ] Bonjour, On me demande de développer un service, qui vise à logguer l'extinction d'un ordinateur. Mon problème provient de cette action "sous win20 PB Bitblt [ par fbalien ] Bonjour J'ai des soucis avec l'API Bilblt je l'utilise pour faire des captures d'écrans J'ai au bout d'un moment une erreur "Espace insuffisant pour t Drag & Drop de fichiers vers TShellListView [ par MAURICIO ] Bonjour à tous!!Pourquoi est-ce que j' ai toujours un problème le vendredi à part si c' est pour me gâcher le Week-end?Je voudrais seleccionner un ou client server erroe 61 [ par jgalil ] >salut : >j'ai developé un logiciel de chat(client-serveur)et j'ai mis le fichier serveur a mon pc et le fichier client dans le pc de mon ami,apres le BitBtn Button OnMouseEnter and OnMouseLeave ? [ par Delphiturbo ] Salutj ai Delphi7 mais cette Version n' a pas Events : OnMouseEnter and OnMouseLeaveJe voudrais  faire cet Efecte :Demo


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,842 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales