Précédent   Forum des professionnels en informatique > Autres langages > Pascal
Pascal Forum d'entraide sur la programmation en langage Pascal et sur les EDI. Avant de poster -> la F.A.Q Pascal, les cours
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/01/2012, 23h50   #1
 
Homme zi
Inscription : octobre 2011
Messages : 1
Détails du profil
Informations personnelles :
Nom : Homme zi

Informations forums :
Inscription : octobre 2011
Messages : 1
Points : -3
Points : -3
Par défaut Faire deviner quatre nombres choisis aléatoirement par l'ordinateur

Bonjour,

J'ai besoin de votre aide sur ce programme. J'ai un examen sur Pascal demain e,t aprés avoir travaillé l'examen de l'an dernier je suis bloqué sur ce dernier exercice.

S.V.P Aidez Moi

zikozakzak est déconnecté   Envoyer un message privé Réponse avec citation 03
Vieux 02/01/2012, 04h59   #2
Expert Confirmé
 
Inscription : août 2006
Messages : 3 195
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 3 195
Points : 3 342
Points : 3 342
Fie,

Bien essayé pour qu'on fasse TON travail.

Tu n'obtiendras pas d'aide sur ce forum si tu ne nous montres pas ce que tu as déjà fait, et il faudra alors que tu nous expliques ce qui te bloque.
__________________
Il court en ce moment une espèce de grippe, mais elle ne court pas très vite, car on peut l'attraper sans courir.
droggo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2012, 08h16   #3
Membre habitué
 
Avatar de joreveur
 
Homme
Développeur informatique
Inscription : janvier 2010
Messages : 142
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Finance

Informations forums :
Inscription : janvier 2010
Messages : 142
Points : 127
Points : 127
Bonjour

comme ton délai est dépassé voila une brique
comment avoir un nombre entre 1 et 10 par exemple

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
program alea;
 
var i,x:integer;
begin
	randomize; // pour avoir une nouvelle série
	writeln('voila 100 nombres entiers entre  1 et 10');
	for i:=1 to 100 do
	begin
		x:=random(10)+1;
		writeln(x);
	end;
end.
après tu modifies et enrichis le code pour parvenir à ce qu'on te demande...

même si c'est deja corrigé, essaie de le refaire avec papier crayon.

bon courage
joreveur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 00h36   #4
ALT
Membre Expert
 
Avatar de ALT
 
Homme
Assistant aux utilisateurs
Inscription : octobre 2002
Messages : 943
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : France, Vienne (Poitou Charente)

Informations professionnelles :
Activité : Assistant aux utilisateurs
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 943
Points : 1 271
Points : 1 271
Une remarque : le randomize n'est indispensable qu'à la première utilisation dans un programme. Donc, inutile de le mettre dans la fonction de génération des nombres. Avant le premier appel de cette fonction est un bon emplacement.

Au fait, pourquoi refaire ce programme uniquement avec un papier & un crayon ? Pourquoi zikozakzak n'essayerait pas de le faire réellement fonctionner ?
__________________
"Un peuple qui est prêt à sacrifier un peu de liberté contre un peu de sécurité, ne mérite ni l'une, ni l'autre, et finira par perdre les deux."
Attribué indistinctement à :
Thomas Jefferson
Benjamin Franklin
Albert Einstein !
ALT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 08h15   #5
Membre habitué
 
Avatar de joreveur
 
Homme
Développeur informatique
Inscription : janvier 2010
Messages : 142
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Finance

Informations forums :
Inscription : janvier 2010
Messages : 142
Points : 127
Points : 127
Bonjour
oui, vous avez raison, le randomize n'est fait que pour initialiser la génération d'une nouvelle série.
Je l'avais mis là pour montrer que ça existait..

non pas uniquement papier-crayon, mais je crois qu'on commence à mettre sur papier avant de coder; mais chacun sa méthode.

cordialement
joreveur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 15h45   #6
ALT
Membre Expert
 
Avatar de ALT
 
Homme
Assistant aux utilisateurs
Inscription : octobre 2002
Messages : 943
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : France, Vienne (Poitou Charente)

Informations professionnelles :
Activité : Assistant aux utilisateurs
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 943
Points : 1 271
Points : 1 271
Bien évidemment, je suis d'accord : on commence avec un papier & un crayon.
Sans cette phase de conception, on va droit dans le mur.
Mais je crois qu'il faut valider cette conception en codant, ne serait-ce que pour vérifier qu'il n'y a pas d'erreur flagrante.
Pour ce qui est de la programmation plus robuste, il existe des méthodes de preuve (qui se font souvent sur du papier aussi !) mais nous dépassons-là largement le cadre de la question initiale.
Bonne journée
__________________
"Un peuple qui est prêt à sacrifier un peu de liberté contre un peu de sécurité, ne mérite ni l'une, ni l'autre, et finira par perdre les deux."
Attribué indistinctement à :
Thomas Jefferson
Benjamin Franklin
Albert Einstein !
ALT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 17h36   #7
Expert Confirmé Sénior
 
Avatar de Paul TOTH
 
Homme Paul TOTH
Freelance
Inscription : novembre 2002
Messages : 3 411
Détails du profil
Informations personnelles :
Nom : Homme Paul TOTH
Âge : 42
Localisation : Réunion

Informations professionnelles :
Activité : Freelance
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2002
Messages : 3 411
Points : 6 705
Points : 6 705
Citation:
Envoyé par ALT Voir le message
Bien évidemment, je suis d'accord : on commence avec un papier & un crayon.
Sans cette phase de conception, on va droit dans le mur.
Mais je crois qu'il faut valider cette conception en codant, ne serait-ce que pour vérifier qu'il n'y a pas d'erreur flagrante.
Pour ce qui est de la programmation plus robuste, il existe des méthodes de preuve (qui se font souvent sur du papier aussi !) mais nous dépassons-là largement le cadre de la question initiale.
Bonne journée
en plus de 20 ans de programmation je n'ai utilisé le papier et le crayon que dans un seul cas (qui revient de temps à autre), c'est la géométrie

dans mon dernier projet, FlipPages, il y a un peu de trigo...et pour ça je me fais toujours un petit dessin ... pour le code JAMAIS
__________________
Developpez.com: Mes articles
Entreprise: Execute SARL
Produits : UPnP, RemoteOffice sous Delphi
Embarcadero : Ile de la Réunion, Dephi, C++Builder, RADPHP...TVA à 8,5%
Paul TOTH est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 06/01/2012, 18h03   #8
Expert Confirmé
 
Inscription : août 2006
Messages : 3 195
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 3 195
Points : 3 342
Points : 3 342
Wia,

Je n'ai plus utilisé papier + crayon depuis très longtemps, car je connais suffisamment la programmation et les algos, mais il n'empêche que c'est important pour les débutants, pour comprendre les bases et les principaux algorithmes.

Question : Combien de questions de débutants ne seraient pas posées s'ils passaient par cette étape ?

Réponse : Presque toutes.


Il ne faut donc pas décourager cette bonne habitude, la plupart des questions venant de débutants.
__________________
Il court en ce moment une espèce de grippe, mais elle ne court pas très vite, car on peut l'attraper sans courir.
droggo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2012, 11h17   #9
Membre confirmé
 
Avatar de titeeee
 
Homme Titouan Créac'h
Lycéen
Inscription : mai 2009
Messages : 193
Détails du profil
Informations personnelles :
Nom : Homme Titouan Créac'h
Âge : 18
Localisation : France

Informations professionnelles :
Activité : Lycéen

Informations forums :
Inscription : mai 2009
Messages : 193
Points : 257
Points : 257
Dans ton cas le plus simple serait d'utiliser un tableau pour stocker la réponse

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
uses crt;
 
var
  Reponse : array[1..4] of Integer;
  Choix     : array[1..4] of Integer;
 
function EstTrouve(AReponse,AChoix : array of Integer) : Boolean;
var
  i : integer;
  Compteur : Integer; 
begin
  Compteur := 0;
  for i := 1 to 4 do
  begin
    if (AChoix[i] = AReponse[i]) then Inc(Compteur);
  end;
  Writeln('Vous avez ',Compteur,' numéro bien placé(s)');
  if Compteur := 4 then EstTrouve := True else EstTrouve := False;
end;
 
function Saisie : Array of Integer;
var
  i : Integer;
  Buffer : Array[1..4] of Integer;
begin
  for i := 1 to 4 do 
  begin
    Writeln('Rentrer le ',i,' nombre : ');
    Readln(Buffer[i]);
  end;
  Saisie := Buffer;
end;
 
//Main
begin
  repeat 
    Choix := Saisie;  
    //Incrémenter compteur des coups
  until EstTrouve(Reponse,Choix);
  //Gagner
end.
Je t'ai fait un petit code, ce n'est pas exactement ton exercice, mais ça y ressemble. Pour les nombre aléatoires, utilise la méthode de joreveur pour initialiser : Reponse

titeeee est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2012, 17h57   #10
ALT
Membre Expert
 
Avatar de ALT
 
Homme
Assistant aux utilisateurs
Inscription : octobre 2002
Messages : 943
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : France, Vienne (Poitou Charente)

Informations professionnelles :
Activité : Assistant aux utilisateurs
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 943
Points : 1 271
Points : 1 271
Oui, on peut se passer de papier & crayon si on maîtrise bien ce qu'on veut faire. Donc, avec de l'expérience.
Mais prendre des notes, écrire un organigramme ou concevoir une base de données se fait mieux sur papier que de tête, il me semble.
J'avoue que pour écrire une procédure j'utilise rarement le papier. Mais réfléchir à ce que doit faire le programme (avant de coder) & l'écrire, ne serait-ce que sur un brouillon, m'est souvent très utile.
Donc, la phase "papier-crayon" est (presque ?) toujours indispensable, au moins à la conception du programme.
__________________
"Un peuple qui est prêt à sacrifier un peu de liberté contre un peu de sécurité, ne mérite ni l'une, ni l'autre, et finira par perdre les deux."
Attribué indistinctement à :
Thomas Jefferson
Benjamin Franklin
Albert Einstein !
ALT est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h33.


 
 
 
 
Partenaires

Hébergement Web