Dev C++, gratuit et compréhensible avec un ptit lien pour le C et c´est parti :
http://casteyde.christian.free.fr/online/cours_cpp/book1.html
mci bcp
Est-ce qu´on peut faire des trucs styles :
if ( (machin < 50 && machin > 10) || ( truc == 2 && bidule == 6)) { . .. ?
C´est des espèces de conditions multiples . ..
C´est soit " machin < 50 et machin > 10" OU " truc == 2 et bidule = 6".
Dans le OU, y´a les " &&".
Enfin, c´est difficile a expliquer . ..
Dîtes si c possible. Merci ![]()
salut 007 !
" if ( ( machin < 50 && machin > 10) || ( truc == 2 && bidule == 6))"
c´est tout a fait possible !
Tout a fait ![]()
N´oublie pas cependant qu´on se paume facilement quand on mixe des &&, des || et tout, ça fait un code moins lisible
Mais ça marche !
Pour simplifier tes opérateurs, n´oublie pas les lois de MORGAN, qui simplifient bien souvent :
! (a && b) < => ! a || ! b
! (a || b) < => ! a && ! b
Les lois de Morgan, j´fais ça en cours lol...(Algèbre de Boole, Tableau de Karnaugh, Lois de Morgan...)
C´est vrai qu´on peut voir ça comme ça ( les simplifications de NOR et NAND)...
D´abord meci a ceux qui m´on aidez precedement pour mes petit problemes
Je voulais juste savoir si il existe un moyen simple d´afficher un nombre en binnaire du style avec printf ou bien une fonction. quulqu´un sait comment on fait pour connaitre " le code source" d´une fonction, c´est a dire comment faire pour savoir comment fonction pow() par ex.
ben si tu as installé les sources avec ton compilo, il suffit de fouiller. Dans le cas contraire, tu n´as que des libs et les headers, donc le code n´est pas dispo en clair.
Maintenant, faire un pow, y´a 4684187 façons de s´y prendre ; si tu veux une fonction dans un cadre bien précis, tu peux toujours coder tes propres fonctions qui répondront au mieux à tes critères ( rapidité, précision, souplesse, etc.)
Pour une fonction qui affiche le binaire, non, pas avec printf.
Mais si tu en veux une je t´en propose une :
void printbin(unsigned char n)
{
int i;
for(i=sizeof(unsigned char)*8-1;i>=0;i--)
cout < < ( (n>>i)&1);
cout < < endl;
}
Et si tu veux afficher autre chose qu´un unsigned char, tu remplaces les 2 occurrences de unsigned char que tu vois.
Et si tu n´as pas peur de la généricité :
template < class T>
void printbin(T n)
{
int i;
for(i=sizeof(T)*8-1;i>=0;i--)
cout < < ( (n>>i)&1);
cout < < endl;
}
Pour le code de pow, je confirme ce que dit LGV
Comment tester une touche si elle est enfoncer, par exemple tester si on nappuie sur espace ? ?
tout dépend ce que tu utilises :
si tu utilises stdio, ce n´est pas évident
conio : getch() , mais bloquant
SDL : gestion d´events.
etc...
Je ne sais pas utiliser sdl, et pour conio je n´arrive pas a l´instaler sur mon compilo ( dev c++) alors je c´est pas comment faire
tu utilises stdio ou iostream ?
a la base, ce n´est pas fait pour faire autre chose que d´afficher du texte, voir uniquement pour " débugger"
Si tu veux essayer de tester des appuis de touche en temps réel, je te conseille des routines prévues a cet effet, orientées jeux pour la plupart ![]()
SDL gere cela si tu veux.
Bonjour a tous
j´aurais encore un petit problème avec mon fantastique programme de cryptage . ..
J´ai utilise la fonction strlen - merci jyy - pour compter le nombre de caractères ecrits par l´utilisateur . .. mais si j´ecrit par exemple :
" je suis jejej "
il marque 2 caracteres ecrits
( j´ai ecrit cout < < NombreCar < < " caracteres ecrits " ;
avec NombreCar qui contient le nombre de caracteres ecrits .
Mais bon , j´ai ecrit 11 caracteres en tout , et mon programme semble ne compter que le premier mot . ..
pour contrer ca , j´utilise des _ pour relier les mots , mais bon cette solution es loin d´etre satisafaisante . ..
comment faire pour que le compilateur ne s´arrete pas de compter apres un espace ? merci
je poste mon code si vous voulez , mais c´est un peu le bazard :
using namespace std;
void Cryptage ( char * Tableau , int Base , int TailleTableau)
{
int i;
for ( i=0 ; i<TailleTableau ; i++)
{
Tableau[i] +=Base;
cout < < Tableau[i];
}
}
int main()
{
int Donnee;
cout<< " Combien de caracteres d´ecart ? " ;
cin>> Donnee;
char Tableau[50];
cout<< " Ecrivez la phrase à crypter \n " ;
cin>> Tableau;
int NombreCar = strlen(Tableau);
cout < < NombreCar < < " caracteres ecrits \n " ;
Cryptage( &[0] , Donnee , NombreCar);
cout<< " \n";
system("pause");
return 0;
}
En fait , il ne compte que le mot JE
Bon je l´ai fait à la va vite , voila le même version pointeurs , beaucoup plus facile à lire . ..
j´ai même rajouté des commentaires . ..
/ / Entrez une base de conversion ( ex : 1 => A - B ; 2 => A - C )
/ / une phrase , et hop , la voila cryptee .
using namespace std;
/ / Fonction cryptage , incremente chaque caractere
/ / entré par l´utilisateur par la valeur de la base ( Donnee ) entrée
void Cryptage ( char *Tableau , int *Donnee , int *NombreCar)
{
int i;
for ( i=0 ; i< *NombreCar ; i++)
{
Tableau[i] += *Donnee;
cout < < Tableau[i];
}
}
/ / Main , demande l´entree de la base - Donnee -
/ /d´une phrase ( stockee dans un tableau ) et appelle
/ / la fonction cryptage , en donnant les adresses de chaque variable
int main()
{
int Donnee;
cout<< " Combien de caracteres d´ecart ? " ;
cin>> Donnee;
char Tableau[50];
cout<< " Ecrivez la phrase à crypter \n " ;
cin>> Tableau;
int NombreCar = strlen(Tableau);
cout < < NombreCar < < " caracteres ecrits \n " ;
Cryptage( &[0] , & , &);
cout<< " \n";
system("pause");
return 0;
}
tu pourrais faire une amélioration en faisant en sorte que la fonction cryptage ne demande pas NombreCar ( d´ailleurs pourquoi est ce que lui et donné sont des pointeurs ? ça sert pas vraiment puice que ces donées ne sont pas modifié par la fonction) mais mesure elle même la longueurs dela chaine, non pas en utilisant strlen, mais en s´effectuant jusqu´à ce qu´elle rencontre un caractère 0 ( pas ´0´, mais 0) qui marque la fin de toute chaine ( normallement).
qu´elle librairie utiliser pour faire l´interface d´un logiciel du genre ftp expert , firefox ect... ?
j´espere qu´il y a la doc avec au moins
il parait qu´il faut utiliser le javascript aussi
vous parler de kel logiciel là ? ![]()
darkhayate2:du javascript ?
comme lib, tu peut soit le faire directement avec l´api win32 ( si tu es sous windows) la doc existe, c´est les quelques teraoctets de données sur le site msdn.microsoft.com sinon comme lib pour faire ça il y a wxWindows qui est potable je croit ( mais je connait pas) et qui as certainement une bonne documentation ( en tout cas elle a une bonne ) et il y en a certainement d´autre mais je ne les connait pas.
ran_tai_5:on ne parle pas d´un logiciel mais d´un langage : le C ( et de son petit frère : le C++).
J´admire toutes tes connaissances JeanYvesYves...Mais j´aimerais savoir à partir de quel âge tu t´es " lancé" ( Je n´est que 14 ans ! ) ? En effet, j´aimerais me mettre à la programmation, et je suis conscient que c´est quelque chose de difficile...
de tes réponses... ![]()