Il y a 45 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici

 Mot :   Pseudo :  
 
 Page :  1  2  3  4  5  6  7  8  9  10  11
Auteur
 Sujet :

Topic Programmation

 
n°57587
cromwell
Mouai
Posté le 02-05-2007 à 00:00:35  profilanswer
 

Reprise du message précédent :

fredo490 a écrit :

Oui aussi
 
Edit, heu sinon tu peux mettre ton nombre comme une chaine de caractère dans un tableau et tu prend la case que tu veux (dernière et avant dernière).
 
Aussi, un modulo 10 de 126, ça te fait 6, donc voila.
Sinon, tu fais un modulo 100, donc il te reste 26, tu fais un modulo 10, tu as 6, et tu fais 26 - 6 et tu divise par 10 et donc tu as le 2.
 
Enfin, faut jouer un peu, c'est des maths et de la logique


 
Que suis-je con. En effet n'importe quel chiffre modulo 10 donnera plus que les unités.  [:chkonk]  
 
J'avais effectivement finit par faire en string. Mais comme ça je gagne déjà du temps.

n°57594
Ashe
reenignE esreveR
Posté le 02-05-2007 à 10:14:03  profilanswer
 

Ma solution est + mieux :o


---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°57618
cromwell
Mouai
Posté le 02-05-2007 à 18:21:12  profilanswer
 

Même pas vrai d'abort !

n°57619
fredo490
Mais pourquoi donc ?
Posté le 02-05-2007 à 18:28:49  profilanswer
 

Ashe a écrit :

Ma solution est + mieux :o


 
124325245943294589358493854958493584384 modulo 10 = 4
En une ligne tu as ton résultat.
 
Enfin, seulement si tu veux le dernier chiffre

n°57628
cromwell
Mouai
Posté le 02-05-2007 à 21:25:01  profilanswer
 

Trop dégouté...Pascal n'est pas capable de faire un modulo en réél  :pfff:

n°57629
LostSoul
Manieur de hache
Posté le 02-05-2007 à 21:26:17  profilanswer
 

Ben y'a la solution générique de Ashe ... et refaire la fonction modulo spas bien compliqué hein


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57630
sebx
boulet cherche canon
Posté le 02-05-2007 à 21:28:16  profilanswer
 

ça existe encore le pascal  :??:


---------------
Célibataire & béhémiste de service
Gentil Organisateur des rencontres matbe
JH 27 ans, bon salaire, propriétaire, roulant en berline Allemande cherche femme pour mariage, bébés et + si affinités
n°57631
LostSoul
Manieur de hache
Posté le 02-05-2007 à 21:32:45  profilanswer
 

sebx a écrit :

ça existe encore le pascal  :??:


 
Pascal Sevran ptet :sol:


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57632
sebx
boulet cherche canon
Posté le 02-05-2007 à 21:34:58  profilanswer
 

[:totoz]


---------------
Célibataire & béhémiste de service
Gentil Organisateur des rencontres matbe
JH 27 ans, bon salaire, propriétaire, roulant en berline Allemande cherche femme pour mariage, bébés et + si affinités
n°57633
Ashe
reenignE esreveR
Posté le 02-05-2007 à 21:38:57  profilanswer
 

Ben y a pas que pascal qui a pas de modulo pour les reels..
En C(++) c'est une fonction, pas un operateur


---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°57663
fredo490
Mais pourquoi donc ?
Posté le 04-05-2007 à 17:53:58  profilanswer
 

Salut mon petit Ashy, encore une question, je voudrai avoir une variable de type Char qui prenne un caractere vide (un '' ne fonctionne pas). Et je veux pas despace.
Il y a pas un truc du genre \0 pour avoir un caractere vide !?

n°57664
Freeed
Posté le 04-05-2007 à 18:29:16  profilanswer
 

Code :
  1. char car = 0;


 :jap:  
 
Tu lui associes la valeur ASCII 0 => NULL (vide...)


---------------
Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
Play loud, drink hard.
n°57665
fredo490
Mais pourquoi donc ?
Posté le 04-05-2007 à 18:37:28  profilanswer
 

lol ben j'ai deja teste, et ca donne un espace

n°57666
Freeed
Posté le 04-05-2007 à 19:39:04  profilanswer
 

boh, c'est bizarre... en fait, c'est pour faire quoi ?


---------------
Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
Play loud, drink hard.
n°57667
Ashe
reenignE esreveR
Posté le 04-05-2007 à 20:09:34  profilanswer
 

Y a pas de caractere vide


---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°57669
LostSoul
Manieur de hache
Posté le 04-05-2007 à 23:05:45  profilanswer
 

Ashe a écrit :

Y a pas de caractere vide


 
+1
 
le code ascii 0 c'est juste un caractère pas affichable mais t'en a bien d'autres (le 254 par exemple)
NB: le blanc c'est 0x20 si je ne m'abuse
 
au fait : char car = 0; ca ne fout pas null ... ca met juste la valeur 0 dans car ...


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57670
Ashe
reenignE esreveR
Posté le 04-05-2007 à 23:08:01  profilanswer
 

NULL en C++ c'est 0
(edit: et '\0' c'est nul ou nil, avec un seul l)


Message édité par Ashe le 04-05-2007 à 23:08:29

---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°57671
LostSoul
Manieur de hache
Posté le 04-05-2007 à 23:27:43  profilanswer
 

NULL en C++ c'est juste un biesse #define ....
 
Ca vaut 0 si le #define vaut 0 mais si qqun un jour se prend l'envie de dire que NULL ben c'est autre chose que 0, on n'est pas dans la m*
 
en c++ d'ailleurs tu peux faire char car = NULL; vu que c'est remplacé pendant le parsing c'est converti comme char car = 0; et stout.
 
par contre en C#, char car = null; -> erreur de compilation! (en java j'sais pas je peux pas tester)
 
Au final dire que null c'est zéro ou l'inverse, même si c'est vrai en C++, ca reste un peu scabreux


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57672
Ashe
reenignE esreveR
Posté le 04-05-2007 à 23:36:08  profilanswer
 

LostSoul a écrit :

Ca vaut 0 si le #define vaut 0 mais si qqun un jour se prend l'envie de dire que NULL ben c'est autre chose que 0, on n'est pas dans la m*


Sauf que c'est defini comme etant 0, c'est dans le langage comme ca :spamafote:


---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°57673
LostSoul
Manieur de hache
Posté le 04-05-2007 à 23:41:35  profilanswer
 

Sinon le caractère 0 dans la table ASCII c'est bien le code "NUL" avec un L :jap:
 
http://ascii-table.com/img/table.gif
 
Ca peut toujours servir une table ASCII


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57675
sebx
boulet cherche canon
Posté le 05-05-2007 à 08:51:53  profilanswer
 

LostSoul a écrit :

par contre en C#, char car = null; -> erreur de compilation! (en java j'sais pas je peux pas tester)


idem, java réagit comme C#, c'est pour les objets uniquement


---------------
Célibataire & béhémiste de service
Gentil Organisateur des rencontres matbe
JH 27 ans, bon salaire, propriétaire, roulant en berline Allemande cherche femme pour mariage, bébés et + si affinités
n°57676
Ashe
reenignE esreveR
Posté le 05-05-2007 à 09:20:33  profilanswer
 

(pour les references)


---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°57677
sebx
boulet cherche canon
Posté le 05-05-2007 à 09:40:14  profilanswer
 

je sais mais moi je dis objets en opposition aux types primitifs  :p
mais on s'est compris


---------------
Célibataire & béhémiste de service
Gentil Organisateur des rencontres matbe
JH 27 ans, bon salaire, propriétaire, roulant en berline Allemande cherche femme pour mariage, bébés et + si affinités
n°57683
fredo490
Mais pourquoi donc ?
Posté le 05-05-2007 à 12:20:12  profilanswer
 

Freeed a écrit :

boh, c'est bizarre... en fait, c'est pour faire quoi ?

 

Je dois faire un convertisseur en C (en rapport avec le temps) et je voulais faire un truc pour que le programme affiche un S quand il y a plus de 1 unité.
Le seul "problème" est que ça fait moche d'avoir un espace à la place du S, donc je cherchais un caractère "vide".

 

Mon idée était de faire quelque chose du genre printf("Il y a : %d minute%c et %d seconde%c", ...)

 

M'enfin, je vais entrer le mot complet comme une variable alors.
(je sais, j'aime me faire chier  :whistle: ).


Message édité par fredo490 le 05-05-2007 à 12:21:03
n°57684
Ashe
reenignE esreveR
Posté le 05-05-2007 à 12:27:05  profilanswer
 

printf( "Il y a %d minute%s", minutes, minutes > 1 ? "s" : "" );


---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°57685
LostSoul
Manieur de hache
Posté le 05-05-2007 à 12:31:49  profilanswer
 

Ashe a écrit :

printf( "Il y a %d minute%s", minutes, minutes > 1 ? "s" : "" );


 
 :jap:  
 
"" -> chaîne de longueur 0 (donc pas de blanc)


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57686
fredo490
Mais pourquoi donc ?
Posté le 05-05-2007 à 13:19:33  profilanswer
 

Ashe a écrit :

printf( "Il y a %d minute%s", minutes, minutes > 1 ? "s" : "" );

 

Heu soucis, si je reprends ton code, il me met des "x" pour le pluriel et un "<" pour le singulier  :cry:
Des idées de l'origine du bug ?

 


Mon code exact est :

Code :
  1. printf("%d heure%c %d minute%c %d seconde%c\n", heure, heure > 1 ? "s" : "" , minute, minute > 1 ? "s" : "" , seconde, seconde > 1 ? "s" : "" ) ;
 

Edit, erreur %c  => %s


Message édité par fredo490 le 05-05-2007 à 13:46:29
n°57687
cruciforme
Artiste incompris
Posté le 05-05-2007 à 13:34:51  profilanswer
 

Tes tests renvoient des strings, pas des chars.


---------------
Avec un grand C.. Membre du Club des Nostalgiques d'EUROSPORT| Les recettes de ma copine - RTBF, je t'aime..
n°57688
fredo490
Mais pourquoi donc ?
Posté le 05-05-2007 à 13:44:24  profilanswer
 

cruciforme a écrit :

Tes tests renvoient des strings, pas des chars.


youps ! Merci bien, j'avais pas remarqué ce petit détail  :pt1cable:

n°57689
sebx
boulet cherche canon
Posté le 05-05-2007 à 13:55:09  profilanswer
 

un String n'est pas un petit détail, ça fait toute la différence  :o
:whistle:


---------------
Célibataire & béhémiste de service
Gentil Organisateur des rencontres matbe
JH 27 ans, bon salaire, propriétaire, roulant en berline Allemande cherche femme pour mariage, bébés et + si affinités
n°57690
fredo490
Mais pourquoi donc ?
Posté le 05-05-2007 à 14:07:39  profilanswer
 

sebx a écrit :

un String n'est pas un petit détail, ça fait toute la différence  :o
:whistle:

 

oui lol mais entre %s et %c  il n'y a pas de différence flagrante à première vue (enfin en regardant de loin et vite fait)

Message cité 1 fois
Message édité par fredo490 le 05-05-2007 à 14:07:56
n°57723
LostSoul
Manieur de hache
Posté le 06-05-2007 à 10:15:06  profilanswer
 

fredo490 a écrit :

oui lol mais entre %s et %c  il n'y a pas de différence flagrante à première vue (enfin en regardant de loin et vite fait)


 
%s : chaîne de caractères (en gros unez zone mémoire pouvant contenir a priori ce qu'on veut et dont le délimiteur de fin est le premier caractère \0 rencontré)
%c : un caractère unique (une valeur numérique représentant un caractère quelconque)


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57771
fredo490
Mais pourquoi donc ?
Posté le 07-05-2007 à 17:08:45  profilanswer
 

Autre question : Dans le prog ci-dessous, quand je tape une chaine de caractere contenant un espace, il ne m'affiche que le premier mot par la suite ...
Des solutions ?
 
 

Code :
  1. char saisi ;
  2. char tableau1[MAX] = {"Je cherche une phrase"} ;
  3. char tableau2[MAX] = {} ;
  4. char tableau3[MAX] = {} ;
  5. printf("Veuillez saisir une chaine de mois de 30 caracteres :\n" ) ;
  6. fflush(stdin) ;
  7. scanf("%s", tableau2) ;
  8. printf("\nVeuillez saisir un caractere :\n" ) ;
  9. fflush(stdin) ;
  10. scanf("%c", &saisi) ;
  11. printf("\n\nTableau 1 : %s", tableau1) ;
  12. printf("\nTableau 2 : %s", tableau2) ;
  13. printf("\nTableau 3 : %s", tableau3) ;
  14. printf("\nSaisi : %c", saisi) ;

n°57772
Freeed
Posté le 07-05-2007 à 17:19:27  profilanswer
 

scanf c'est mal :o (surtout pour les chaines de caractères). Regarde du coté de fgets ;)


---------------
Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
Play loud, drink hard.
n°57773
fredo490
Mais pourquoi donc ?
Posté le 07-05-2007 à 18:04:02  profilanswer
 

On est pas sensé connaitre fgets  :na:  
Mais si personne n'a de solution, on va la connaitre  [:dreamworker:4]

n°57774
LostSoul
Manieur de hache
Posté le 07-05-2007 à 18:25:52  profilanswer
 

fredo490 a écrit :

Autre question : Dans le prog ci-dessous, quand je tape une chaine de caractere contenant un espace, il ne m'affiche que le premier mot par la suite ...
Des solutions ?

 

Dans tableau2 ?

 
Citation :

%s String of characters. This will read subsequent characters until a whitespace is found (whitespace characters are considered to be blank, newline and tab).

 

http://www.cplusplus.com/reference [...] scanf.html

 

Et paf !


Message édité par LostSoul le 07-05-2007 à 18:26:11

---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57775
Freeed
Posté le 07-05-2007 à 18:29:31  profilanswer
 

Wai donc pas le choix :D fgets :o Avec une petite fonction de nettoyage pour dégager le saut à la ligne à la fin ;)
 
Genre :
 

Code :
  1. void clean(char *buffer)
  2. {
  3.     char *p = strchr(buffer, '\n');
  4.     if(p != NULL)
  5.         *p = 0;
  6. }


---------------
Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
Play loud, drink hard.
n°57776
LostSoul
Manieur de hache
Posté le 07-05-2007 à 18:36:12  profilanswer
 

D'un autre côté c'est le comportement normal de scanf() donc il n'a pas à corriger ce truc là. On lui demande d'utiliser scanf -> pas de blancs :sol:

 

EDIT : gets() ne laisse pas de saut de ligne ...
http://www.cplusplus.com/reference [...] /gets.html

Citation :

Reads characters from stdin and stores them as a string into str until a newline character ('\n') or the End-of-File is reached.
The ending newline character ('\n') is not included in the string.


Message édité par LostSoul le 07-05-2007 à 18:38:31

---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57777
Ashe
reenignE esreveR
Posté le 07-05-2007 à 19:27:59  profilanswer
 

Hahah, gets, elle est bien bonne

 

scanf( "%[^\n]", chaine );

 

Edit: et pour le haha (man page de gets()):

 
Citation :

Never use gets(). Because it is impossible to tell without knowing the data in advance how many characters gets() will read, and because gets() will continue to store characters past the end of the buffer, it is extremely dangerous to use. It has been used to break computer security. Use fgets() instead.


Message édité par Ashe le 07-05-2007 à 19:29:35

---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°57778
fredo490
Mais pourquoi donc ?
Posté le 07-05-2007 à 19:34:29  profilanswer
 

C'est un vrai combat d'expert ce topic lol !

 

Edit, le technique de Ashe fonctionne à merveille ! Merci bien.

Message cité 1 fois
Message édité par fredo490 le 07-05-2007 à 19:35:45
n°57779
Ashe
reenignE esreveR
Posté le 07-05-2007 à 19:53:56  profilanswer
 

Au passage fflush(stdin) c'est le mal (tm)
(fflush c'est que pour les streams de sortie)


---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
 Page :  1  2  3  4  5  6  7  8  9  10  11

Aller à :
Ajouter une réponse