CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Exercice à résoudre

freedix
freedix
Niveau 10
22 juillet 2003 à 12:25:32

J´ai un exercice dans mon livre que j´arrive pas à résoudre. Je vais recopier l´énoncé :
Ecrivez un programme qui prend comme entrée un nombre de cinq chiffres, qui sépare les différents chiffres composant ce nombre et qui affiche les chiffres séparés les uns des autres par trois espaces. ( Indice : utilisez l´opérateur de division d´entier et l´opérateur modulo.) Par exemple, si l´utilisateur tape 42339, le programme devrait afficher :
4 2 3 3 9

Je vois pas trop comment avec l´opérateur modulo, on pourrait arriver à ça ! !!
Merci :)

VictorVVV
VictorVVV
Niveau 6
22 juillet 2003 à 13:13:05

Je pense a qqchose comme ca :

int number;
int nombre;
int num;
cin » nombre;
number=nombre;
char chaine[21];
for ( int i = 0;i<5;i++)
{
chaine[13-i*4] = ` `;
chaine[14-i*4] = ` `;
chaine[15-i*4] = ` `;
num=number%10;
chaine[12-i*4] = num;
number=number/10;
}
cout «nombre «chaine

lag-it
lag-it
Niveau 10
22 juillet 2003 à 13:15:31

Tien tien tien, " comment programmer en C++", le retour :-)))

En fait c´est simple ( mais au début j´avais pas trouvé aussi :) ) :
L´énoncé stipule que le nombre traité comportera 5 chiffres, donc si x représente ton chiffre :

x = 12345 ( par exemple )

Tu commence par faire x / 10000 et t´obtient 1 ( le premier chiffre )
Ensuite tu fait x %= 10000 ( pour supprimer le premier chiffre.

Et ainsi de suite ( x / 1000, t´obtiens 2 ) puis modulo . ..

VictorVVV
VictorVVV
Niveau 6
22 juillet 2003 à 13:19:03

Ma solution elle est juste ?

JeanYvesYves
JeanYvesYves
Niveau 10
22 juillet 2003 à 13:26:26

ça a l´air correct Victor :)

je propose une autre solution en C

  1. include < stdio.h>

void main()
{
int a;
int nombre;
char chiffre[5];
printf("entrez le nombre\n");
scanf("%d",&);
for(a=0;a<5;a++)
{
chiffre[5-a]=nombre%10;
nombre/=10;
}
for(a=0;a<5;a++)
printf("%d " ,chiffre[a]);
printf("\n");
}

freedix
freedix
Niveau 10
22 juillet 2003 à 13:29:44

Merci lag-it pour la solution. :) :content:
VictorVVV et JY², j´ai pas encore appris les structures de controles donc je peux pas utiliser vos solutions.

VictorVVV
VictorVVV
Niveau 6
22 juillet 2003 à 13:30:13

JeanYvesYves:

char chiffre[5];
printf("entrez le nombre\n");
scanf("%d",&);
for(a=0;a<5;a++)
{
chiffre[5-a]=nombre%10;
nombre/=10;
}
ca ecris dans chiffre[5] lorsque a =0. est-ce que cest grave ?

JeanYvesYves
JeanYvesYves
Niveau 10
22 juillet 2003 à 13:34:49

woups ! ! oui, C grave :)

c´était

chiffre[4-a] qu´il fallait mettre !

je l´ai pas testé, mais ça doit marcher a une ou 2 erreurs d´étourderie pres !

Lightness1024
Lightness1024
Niveau 10
22 juillet 2003 à 16:11:22

pas appris les structures de controle et ils te font faire un programme comme ca ?
oué bon ok c possible mais peut etre ke ce genre d´astuce mathématiques ont les fait un peu apres je pense.
ce genre de trucs amusant je le faisait quand j´avais, non je ferme ma guele apres yen a ki vont dire ke je me vante.

lag-it
lag-it
Niveau 10
22 juillet 2003 à 16:17:28

L´exercice demande à etre replacé dans son contexte Light :
Il s´agit d´un exo du premier chapitre.
Lors de ce chapitre ont étés abordés les opérateurs de base : +, -, +=, %=, . ..
C´est le genre d´exercice à la " Hello world ! "
Quand aux astuces mathéméatiques, elles se limitent à :

cout < < x/10000 < < " " ;
x %= 10000;
cout < < x/1000 < < " " ;
x %= 1000;
. ..

C´est séquentiel, mais ce n´est encore que le premier chapitre !

Lightness1024
Lightness1024
Niveau 10
22 juillet 2003 à 22:22:56

ben oui c´est séquentiel c pour ca ke peut etre un programme comme ca pourrais venir apres.

mais en tout cas c´est interressant de faire l´exercice dans le contexte précis de ces opérateurs tu as raison.

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment