Comment créer ce programme?

Clark -  
Polux31 Messages postés 7219 Statut Membre -
Bonjour,alors voilà,j'ai un ptit souci,ou plutot je sèche ^^
Pouvez vous m'aider la dessus:

Elaborer une procédure qui recherche le plus grand chiffre a du nombre U. Ex : si U = 1827 alors a = 8

Mercii d'avance!

36 réponses

Sly
 
bonsoir,

J'ai pensé a ca :
(pas mis les Dim ...)

'Le nombre que tu veux
monnombre = 1234512
'conversion en chaine de caracteres(string)
str_monnombre = CStr(monnombre)
' boucle pour tester chaque caractere
For i = 1 To Len(str_monnombre)
'on lit chaque caractere de la chaine
chiffre = Mid(str_monnombre, i, 1)
'si il est plus grand que ton plus grand chiffre, il le remplace
If chiffre > plus_grand Then plus_grand = chiffre
Next

'sortie, on affiche le plus grand chiffre trouvé
MsgBox plus_grand

cordialement.
1
sfel Messages postés 1645 Statut Membre 430
 
ton chiffre U fais toujours 4 chiffres ??
0
darwin42 Messages postés 265 Statut Membre 67
 
Salut,
Je verrais bien un truc dans ce style :

- tu convertis U (qui doit être un numérique) en chaîne
- tu fais une boucle qui va de 1 à n (où n est le nombre de caractères de U)
- tu initialises la variable "a" à 0 => a=0
- tu lis chaque caractère de U
- tu convertis le caractère lu en numérique
- si le caractère lu est supérieur à a alors a=le caractère lu

Voilà, en gros...
0
Clark
 
Pas forcément c'est un exemple .Si U a plus de 4 chiffres,je peux toujours mettre

Dim U as Long non?
lol ouais sa se voit que je débute.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sfel Messages postés 1645 Statut Membre 430
 
non le + simple, c'est de diviser le nombre.

c'est pour ca que j'attende qu'il me dise si le U est toujours de 4 chiffres, code assez simple.
ou si le U varie en taille, dans quel cas, on pousse un peu + le code
0
sfel Messages postés 1645 Statut Membre 430
 
a oui, donc t'es en VB vu ton Dim

j'avai pas demandé
0
Clark
 
Oui dsl j'aurai du préciser pour le VBE.
Sa m'a l'air pas mal ta solution Darwin.Je vais essayer!
0
Clark
 
Mille merci!!!
0
Sly
 
de rien :)
0
th1_man Messages postés 36 Statut Membre
 
y'a une methode toute simple(en C):

u est un int prenant u = 1825

int i, c=1;

for(i=1;u/c>1;i++) //Pour connaitre le nbr de chiffre
c=c*10;

int max=u mod 10; //i=4
for(;i>0;i--)
{
u=u/10; // mod c'est le réste de la division
if(max<(u mod 10)) //max désigne le maximum
max=u mod 10;
}
0
Clark
 
Ok j'essaie sa th1_man ;)
La tienne Sly marche très bien,mais je me bas encore pour pouvoir poser n'importe quelle valeur pour U,donc a travers des fenetres de communications avec excell.
0
th1_man Messages postés 36 Statut Membre
 
mrd clark j't'attend depuis tout a l'heur :-<
0
Clark
 
J'ai essayé ta proposition th1_man,mais sa ne marche pas.
La tienne Sly marche très bien,mais je me cherche encore pour pouvoir poser n'importe quelle valeur pour U,donc a travers des fenetres de communications avec excell.
0
Clark
 
Arf!
Désolé th1_man !!!!
J'étais sur excell,concentré comme un jus d'orange...ouais c'est naz comme vanne.
Donc ben je connaissais la fonction mod,mais je ne savais pas encore comment l'intégrer.Je continue donc de bosser donc sur le tien,et celle de Sly.
Encore merci!
0
sema
 
bonsoir
je veux faire une gestion d'etudiants avec une interface en java
j'ai fait une classe etudiant dont j'ai créé un étudiant puis j'ai une classe fenetre qui contient des bouttons ( ajouter un etudiant,supprimer,chercher,afficher,quitter)
et ya aussi dans un autre fichier une classe dialogue qui gere une fenetre de dialog qui contient des label et des textfield pour le nom , le prenom,le numéro d'etudiants et qui s'affiche lors de l'appui sur les bouttons de la fenetre g fé aussi une classe main pour instancier un objet fenetre et un objet dialogue et la je veux gérer mes evenements dans une classe event pour les bouttons mais je c faire que le boutton quitter et les autres je c pas quoi faire pour eux
veuillez me repondre svp j'ai vraiment besoin de vous
merci poue tous
0
Polux31 Messages postés 7219 Statut Membre 1 204
 
Bonjour Sema,

Dans ta classe Fenetre, tu déclare un écouteur pour chaque bouton.

import Fenetre;

public class Fenetre {

......

Event event = new Event(this);

bouton1.addActionListener(event); //écouteur
bouton2.addActionListener(event);

....
}

Ta classe Event doit implémenter ActionListener.

public class Event implements ActionListener{

Fenetre parent;

// contructeur
public Event(Fenetre parent){
this.parent = parent;
}

// gestion des évènements après click sur un bouton
public void actionPerformed(ActionEvent event){

Object sourceEvent = event.getSource();

if (sourceEvent == parent.monBouton1){

// ici le code pour l'action sur le bouton1

}

if (sourceEvent == parent.monBouton2){

// ici le code pour l'action sur le bouton2

}
.....
}

}

bon courage

:o)
0
th1_man Messages postés 36 Statut Membre
 
voilà une vérsion qui marche,,, hier c'été du travail baclée:

#include<stdio.h>
void main()
{
int i, c=1, u; //prenant u=1890

scanf("%d", &u); //nbr de chiffre de u ne doit pas dépassé 6 sinon LOL
for(i=1;u/c>1;i++) //Pour connaitre le nbr de chiffre
c=c*10;
//i=4
int max=u % 10; // % designe mod qui donne le réste de la division
for(;i>0;i--)
{
u=u/10;
if(max<(u % 10)) //max désigne le maximum
max=u % 10;
}
printf("Le max= %d",max);
}

voilà le prog, mais souvient toi u ne doit pas dépasser 6 chiffres, sinon la méthodes des chaines de caractéres sera + éfficaçe...
0
Polux31 Messages postés 7219 Statut Membre 1 204
 
th1_man, ta solution me parait bonne (je ne l'ai pas testée) mais il existe une incertidute : le nombre de chiffre dans u, la variable a traité. Dans ce cas, il ne faut pas hésiter, il faut passer par la chaîne de caractères ou changer le type de variable u en long.
0
Clark
 
J'essaie de suite ta solution th1_man ;)

Et si possible,de voir si long résout le probleme de grandeur de U.
0
sema
 
merci bien Polux31

ya un probleme sur cette instruction : Event event = new Event(this);
et meme dans le main quand j'instancié des objets => erreur je c pas pourquoi par exp
Frame1 fenetre = new Frame1();
Dialogue fenetre2 = new Dialogue(fenetre);
ça aussi donne la meme erreur
es que tu peux me donné les codes pour créer les actions sur les bouttons
et la variable monbouton1 où doit elle se trouvée
0