dduck Hardware : fredo490 Achats/Ventes : kptaindidj Divers : GreG_WMN, 2 utilisateurs anonymes et 20 utilisateurs inconnus

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

Topic Programmation

 
n°57242
Harkonnen
Posté le 11-04-2007 à 20:43:17  profilanswer
 

Reprise du message précédent :
il est sympa ce topic ! je peux jouer aussi ?

n°57243
fredo490
Mais pourquoi donc ?
Posté le 11-04-2007 à 21:42:31  profilanswer
 

Harkonnen a écrit :

il est sympa ce topic ! je peux jouer aussi ?


 
Fait toi plaisir !

n°57244
cromwell
Mouai
Posté le 11-04-2007 à 22:06:27  profilanswer
 

Vu le mêtier.  
Comme dis fredo. Fait toi plaisir.

n°57245
fredo490
Mais pourquoi donc ?
Posté le 11-04-2007 à 22:13:46  profilanswer
 

cromwell a écrit :

Vu le mêtier.  
Comme dis fredo. Fait toi plaisir.


 
j'ai même pas fait gaf à ce détail lol !
Il va y avoir de la concurrence à Ashe  :whistle:  
 
C'es bon signe tout ça lol

n°57249
Ashe
reenignE esreveR
Posté le 11-04-2007 à 23:52:22  profilanswer
 

De la concurrence sur des hello world et des boucles, ca va etre du haut niveau et ultra complexe :whistle:


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

poke poke poke poke ...


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57300
fredo490
Mais pourquoi donc ?
Posté le 13-04-2007 à 22:12:10  profilanswer
 

Je vais profiter du nouveau topic ...
 
Question : la taille d'un "char" en langage C est bien de 1 octet ?

n°57301
Freeed
Posté le 13-04-2007 à 22:12:57  profilanswer
 

Normalement waip :p Mais y'a des exceptions sur certaines architectures tordues :D


---------------
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°57302
Ashe
reenignE esreveR
Posté le 13-04-2007 à 22:14:09  profilanswer
 

C'est pas un octet, c'est un byte :o
(donc sizeof(char) c'est toujours 1)
(mais un byte c'est CHAR_BITS bits, pas forcement 8)
(non pas capillotracte)


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

Heu ... oui tout à fait !
 
Le truc c'est que j'ai une question du genre : "quelle est la taille en octet d'un caractère".
On doit déduire la taille à partir de pointeurs (en gros on met des caractères à la suite et on regarde le décalage des pointeurs).
 
Et au passage, l'adresse donné par le pointeur est la premier byte du truc pointé ou le premier octet ?

n°57304
Ashe
reenignE esreveR
Posté le 13-04-2007 à 22:29:20  profilanswer
 

Y a pas d'octets en C, que des bytes
La taille d'un caractere (genre char) c'est sizeof(char) mais comme c'est toujours 1 autant dire que la taille d'un caractere c'est 1
(et jvois pas le rapport avec les pointeurs)


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

Ashe a écrit :

Y a pas d'octets en C, que des bytes
La taille d'un caractere (genre char) c'est sizeof(char) mais comme c'est toujours 1 autant dire que la taille d'un caractere c'est 1
(et jvois pas le rapport avec les pointeurs)

 

Voila "l'exo"

 
Citation :

3.3 Exercice 3
Objectif : manipulation de tableaux de caractères et pointeur.

 

Dans ce TP, vous devrez répondre une question. La réponse est à mettre dans le commentaire qui précède le code source.

 

Programme a réalisé : vous déclarez un tableau de 5 caractères et un pointeur sur caractères.
Vous initialisez les valeurs de chaque case de matière avec une lettre quelconque, mais différentes pour chaque case.

 

Vous affectez au pointeur l'adresse de la deuxième case.
Vous visualisez les trois éléments suivants : adresse du pointeur, contenu du pointeur (c'est une adresse), valeur de la variable dont l'adresse est dans le pointeur. Chaque élément doit être précédé d'un texte qui indique sa nature.

 

Vous incrémentez le pointeur puis visualisez les trois éléments suivants : adresse du pointeur, contenu du pointeur (c'est une adresse), valeur de la variable dont l'adresse est dans le pointeur.

 

Question . En exploitant les deux visualisations qui précédent, quelle taille (en nombre d'octets) occupe
un caractère en mémoire ? Vous expliquez vôtre réponse.

 

Donc voila quoi ...


Message édité par fredo490 le 13-04-2007 à 22:34:56
n°57306
fredo490
Mais pourquoi donc ?
Posté le 13-04-2007 à 22:36:54  profilanswer
 

Citation :

Byte
Un article de Wikipédia, l'encyclopédie libre.
Aller à : Navigation, Rechercher
 
Le byte est la taille de la plus petite unité adressable d'un ordinateur. Aujourd'hui, une taille du byte de 8 bits, soit un octet, s'est imposée suite à la généralisation des échanges de données et des télécommunications. Sur d'anciens processeurs, jusque dans les années 1970, le byte était parfois de 6, 7 ou 9 bits.


 
Comprends mieux comme ça  :pt1cable:

n°57307
sebx
boulet cherche canon
Posté le 13-04-2007 à 22:37:09  profilanswer
 

c'est moi ou ça veut rien dire ?   :D
edit : l'énoncé

Message cité 2 fois
Message édité par sebx le 13-04-2007 à 22:37:35

---------------
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°57308
Ashe
reenignE esreveR
Posté le 13-04-2007 à 22:38:59  profilanswer
 

Code :
  1. /*
  2. La taille d'un caractere en memoire est de CHAR_BITS / 8 octets, aucun rapport avec les pointeurs, mais si ca peut faire plaisir on voit que le "contenu" du pointeur augmente de 1 quand on l'incremente, donc c'est 1 "octet"
  3. */
  4. int main()
  5. {
  6.     char tableau[5] = { 'a', 'y', 'z', 'v', 'k' };
  7.     char * pointeur;
  8.     pointeur = &tableau[1];
  9.     printf( "Adresse: %p\n", &pointeur );
  10.     printf( "Contenu: %p\n", pointeur );
  11.     printf( " Valeur: %c\n", * pointeur );
  12.     ++pointeur;
  13.     printf( "Adresse: %p\n", &pointeur );
  14.     printf( "Contenu: %p\n", pointeur );
  15.     printf( " Valeur: %c\n", * pointeur );
  16.     return 0;
  17. }


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

sebx a écrit :

c'est moi ou ça veut rien dire ?   :D
edit : l'énoncé


 
Et encore, ils ont fait des efforts !
Les premiers TD étaient vraiment louche ... Ici on peut deviner se qu'il faut faire, les anciens on pouvait pas lol.
Depuis peu, à force de les faire chier ils indiquent le "but" des exos. (énorme avancé !)

n°57310
LostSoul
Manieur de hache
Posté le 14-04-2007 à 07:26:01  profilanswer
 

fredo490 a écrit :

Je vais profiter du nouveau topic ...
 
Question : la taille d'un "char" en langage C est bien de 1 octet ?


 
sizeof(char) :p (mais  [:girou] depuis longtemps)
 

sebx a écrit :

c'est moi ou ça veut rien dire ?   :D
edit : l'énoncé


 
Ben ... stun énoncé théorique sur les pointeurs, l'utilisation de & et *
 


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57315
fredo490
Mais pourquoi donc ?
Posté le 14-04-2007 à 13:06:18  profilanswer
 

LostSoul a écrit :

sizeof(char) :p (mais  [:girou] depuis longtemps)
 
Ben ... stun énoncé théorique sur les pointeurs, l'utilisation de & et *


T'arrive après la guerre lol !
Oui mais la question principale est était : quelle est l'unité de ce "1" qu'il t'affiche ?! Car ce n'est pas trivialement des octets.
 
Enfin bon, j'ai envoyé mon éxo finalement.

Message cité 1 fois
Message édité par fredo490 le 14-04-2007 à 14:11:40
n°57316
Ashe
reenignE esreveR
Posté le 14-04-2007 à 13:07:15  profilanswer
 

fredo490 a écrit :

Oui mais la question principale est : quelle est l'unité de ce "1" qu'il t'affiche ?! Car ce n'est pas trivialement des octets.


On te l'a deja dit 15 fois, c'est en bytes


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

voilà :o


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57319
fredo490
Mais pourquoi donc ?
Posté le 14-04-2007 à 14:11:15  profilanswer
 

Ashe a écrit :

On te l'a deja dit 15 fois, c'est en bytes


 
J'aurai du mettre du passé dans la "question" ... Désolé.
J'avais bien compris que c'était 1 byte et qu'ici 1 byte = 1 octet.
 
C'était juste pour répondre à Lost qui lançait juste le sizeof.

n°57494
fredo490
Mais pourquoi donc ?
Posté le 24-04-2007 à 14:46:55  profilanswer
 

Ashy mon ami ...
 
Peux-tu m'envoyer des preuves que le sizeof est en Byte ?!?!
Mon prof me fait chier
 
Il me sort que ca fait des annees qu'il fait du C et que ca toujours ete des Octets ...
 
edit, la fonction ci-dessus CHAR_BYTES ... tas des info ?!
edit 2, elle est dans quelle bibliotheque ?!
 
Tas pas un prog qui te fais changer la taille entre deux sizeof ?!

Code :
  1. {
  2. printf("%d", sizeof(char)) ;
  3. JE CHANGE LA TAILLE D'UN CHAR
  4. printf("%d", sizeof(char)) ;
  5. }


Ou sinon un moyen de le definir autrement ?!


Message édité par fredo490 le 24-04-2007 à 15:01:48
n°57495
LostSoul
Manieur de hache
Posté le 24-04-2007 à 15:02:33  profilanswer
 

Ton prof est français, pour lui un byte c'est un octet ... C'est typiquement le genre de cas sur lequel tu pourras discuter tant que tu veux.  
 
http://fr.wikipedia.org/wiki/Byte


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57497
Ashe
reenignE esreveR
Posté le 24-04-2007 à 17:11:58  profilanswer
 

Citation :

Values stored in non-bit-field objects of any other object type consist of n × CHAR_BIT bits, where n is the size of an object of that type, in bytes.

 
Citation :

CHAR_BIT
    number of bits in a char


(limits.h)

 

Sinon y a des plateformes ou CHAR_BIT est 32, bonc un byte (ou char) de 32 bits

 

Puis c'est ecrit en grand dans le standard, il a qu'a y jeter un coup d'oeil

 

Edit: http://www.open-std.org/JTC1/SC22/ [...] /n1124.pdf
(c'est le draft et c'est du C99 et pas 89, mais bon)

 

http://atw.dreamingprophet.net/c99byte.jpg


Message édité par Ashe le 24-04-2007 à 17:17:32

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

Merci mon petit Ashe je t'en suis tres reconnaissant   :jap:

n°57502
sebx
boulet cherche canon
Posté le 24-04-2007 à 19:23:06  profilanswer
 

eh ben je vois que les profs sont tous les mêmes  :D


---------------
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°57503
fredo490
Mais pourquoi donc ?
Posté le 24-04-2007 à 19:34:02  profilanswer
 

sebx a écrit :

eh ben je vois que les profs sont tous les mêmes  :D


 
Et même avec le message de Ashe, il a mis du temps à réaliser la chose  :pt1cable:

n°57506
LostSoul
Manieur de hache
Posté le 24-04-2007 à 22:13:33  profilanswer
 

De toute façon c'est pas non plus fondamental puis au moins là t'es sur qu'il t'aura pas à la bonne et qu'il loupera pas une occase de te saquer :p


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57507
sebx
boulet cherche canon
Posté le 24-04-2007 à 22:25:25  profilanswer
 

clair, jamais montrer son incompétence à un prof si t'as l'intention de rester dans l'école encore quelques années  :p
(surtout si t'es déjà à fond et que s'il te titille un peu tu risques de te trouver en difficulté  ;) )


---------------
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°57512
fredo490
Mais pourquoi donc ?
Posté le 25-04-2007 à 00:39:10  profilanswer
 

Aucun soucis de ce problème de ce coté.
 
Le "problème" se posait sur le fait qu'au dernier exo on devait donner l'unité d'un "sizeof". Et comme dis ici, c'est en Byte et non en Octet et le prof ne voulait rien savoir, donc voilà.
 

n°57518
Ashe
reenignE esreveR
Posté le 25-04-2007 à 09:54:35  profilanswer
 

Si tu veux l'rassurer maintenant CHAR_BIT fait minimum 8 :p


---------------
Globe trotter/SDF - Namur, Belgique
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°57577
cromwell
Mouai
Posté le 01-05-2007 à 20:48:33  profilanswer
 

autre question.
Comment je fait si j'ai un nombre. Exemple 23. Et que j'aimerai juste les décimale. Dans ce cas le 3.

n°57579
fredo490
Mais pourquoi donc ?
Posté le 01-05-2007 à 21:52:56  profilanswer
 

Un modulo 10 non ?

n°57580
cromwell
Mouai
Posté le 01-05-2007 à 22:17:43  profilanswer
 

putain j'suis trop con ! Merci
 
Edit : Ha mais non, si ça passe à 126, par exemple, le programme devine comment qu'il doit passer à modulo 100 ?


Message édité par cromwell le 01-05-2007 à 22:20:03
n°57581
cruciforme
Artiste incompris
Posté le 01-05-2007 à 22:18:17  profilanswer
 

cromwell a écrit :

autre question.
Comment je fait si j'ai un nombre. Exemple 23. Et que j'aimerai juste les décimale. Dans ce cas le 3.


On a pas la même notion de décimales :D


---------------
Avec un grand C.. Membre du Club des Nostalgiques d'EUROSPORT| Les recettes de ma copine - RTBF, je t'aime..
n°57582
cromwell
Mouai
Posté le 01-05-2007 à 22:19:07  profilanswer
 

oui bon d'accor...les unités   :kaola:

n°57583
fredo490
Mais pourquoi donc ?
Posté le 01-05-2007 à 22:37:20  profilanswer
 

cruciforme a écrit :

On a pas la même notion de décimales :D

 

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

Message cité 1 fois
Message édité par fredo490 le 01-05-2007 à 22:40:52
n°57584
LostSoul
Manieur de hache
Posté le 01-05-2007 à 22:46:23  profilanswer
 

cromwell a écrit :

autre question.
Comment je fait si j'ai un nombre. Exemple 23. Et que j'aimerai juste les décimale. Dans ce cas le 3.


 
Au hasard t'enlèves le 2 ? :p


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°57585
fredo490
Mais pourquoi donc ?
Posté le 01-05-2007 à 22:59:04  profilanswer
 

LostSoul a écrit :

Au hasard t'enlèves le 2 ? :p


 
mdr !
Mais biensur, pourquoi n'y ai-je pas pensé ?!

n°57586
Ashe
reenignE esreveR
Posté le 01-05-2007 à 23:05:05  profilanswer
 

(on va dire que c'est du C, oh desespoir)

Code :
  1. #include <...>'s
  2. int main()
  3. {
  4.     int nombre = 12345;
  5.     int digits = (int)floor( log10( abs( number ? number : 1 ) ) + 1;
  6.     /* N = le chiffre que tu veux */
  7.     int digit = (nombre % (int)pow( 10, N )) / (int)pow( 10, N - 1);
  8. }


(le int digits c'est juste pour savoir que N peut aller que jusque 5)


Message édité par Ashe le 01-05-2007 à 23:05:17

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

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.

 Page :  1  2  3  4  5  6  7  8  9  10  11

Aller à :
Ajouter une réponse