... .. - . -. ... .. ..--- ----- ..--- ----- -....- ..--- ----- ..--- .----
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

242 lines
12 KiB

<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>La programmation avec Jean-Lou</title>
<link rel="stylesheet" type="text/css" href="../css/style.css">
<link rel="stylesheet" type="text/css" href="../css/prism.css">
</head>
<body>
<nav>
<ul style="width: 1000px;">
<li>
<a href="../Index.html">Accueil</a>
</li>
<li class="menu-deroulant">
<a href="#"class="ho_menu">Languages</a>
<ul class="sous-menu">
<li><a href="python.html">Python</a></li>
<li><a href="c.html">C</a></li>
<li><a href="c++.html">C++</a></li>
</ul>
</li>
<li class="menu-deroulant">
<a href="#" class="ho_menu">Rasberry Pi</a>
<ul class="sous-menu">
<li><a href="histoire.html">Histoire</a></li>
<li><a href="os.html">Mettre un os</a></li>
<li><a href="lecteur.html">lecteur NFC</a></li>
</ul>
</li>
<li><a href="../interpreteur/interpreteur.html">Interpréteur</a></li>
</ul>
</nav>
<div class="aligne">
<div class="article">
<h1 id="ancre1">Bienvenue sur la page du <a href="https://fr.wikipedia.org/wiki/C%2B%2B">C++ !</a></h1>
<h2>Le <a href="https://fr.wikipedia.org/wiki/C%2B%2B">C++</a> qu'est ce que c'est ? </h2>
<img src="https://upload.wikimedia.org/wikipedia/commons/1/18/ISO_C%2B%2B_Logo.svg" id="cc">
<p id="ancre2">C++ est un langage de programmation compilé permettant la programmation sous de multiples paradigmes,dont la programmation procédurale, la programmation orientée objet et la programmation générique.<br>
<br>
Ses bonnes performances, et sa compatibilité avec le C en font un des langages de programmation les plus utilisés dans les applications où la performance est critique.<br>
<br>
En langage C, ++ est l'opérateur d'incrémentation, c'est-à-dire l'augmentation de la valeur d'une variable de 1. C'est pourquoi C++ porte ce nom : cela signifie que C++ est un niveau au-dessus de C.</p>
<h2>Comment et par qui a été créé le C++ ?</h2>
<p>Bjarne Stroustrup commence le développement de C with Classes (C avec des classes) en 1979. Il travaille alors dans les laboratoires Bell où il est notamment collègue de l'inventeur du C Dennis Ritchie. L'idée de créer un nouveau langage venait de l'expérience en programmation de Stroustrup pour sa thèse de doctorat.<br>
<br>
Il s'agissait en l'occurrence d'améliorer le langage C. Stroustrup trouvait que Simula avait des fonctionnalités très utiles pour le développement de gros programmes mais qu'il était trop lent pour être utilisé en pratique (cela était dû à un problème d'implémentation du compilateur Simula),<br>
tandis que BCPL était rapide mais de trop bas niveau et non adapté au développement de gros logiciels.<br>
<br>
Quand Stroustrup commença à travailler aux laboratoires Bell, on lui demanda d'analyser le noyau UNIX en vue de faire du calcul distribué. Se rappelant sa thèse, Stroustrup commença à améliorer le langage C avec des fonctionnalités similaires à celle de Simula.<br>
<br>
C fut choisi parce qu'il est rapide, portable et d'usage général. En outre, il était une bonne base pour le principe original et fondateur de C++ : « vous ne payez pas pour ce que vous n'utilisez pas ». Dès le départ, le langage ajoutait à C la notion de classe (avec encapsulation des données), de classe dérivée,
de vérification des types renforcés (typage fort), d'« inlining », et d'argument par défaut.</p>
<p class="creapythonom">Bjarne Stroustrup</p>
<img id="ancre3" src="https://upload.wikimedia.org/wikipedia/commons/thumb/d/da/BjarneStroustrup.jpg/220px-BjarneStroustrup.jpg" class="creapython">
<h2>Pourquoi est-il beaucoup utilisé ?</h2>
<p id="ancre4">Le C++ est connu pour être un langage très puissant. Le C++ vous permet d’avoir un grand contrôle sur la façon dont vous utilisez les ressources informatiques,
donc entre de bonnes mains sa vitesse <br>
et sa capacité à utiliser les ressources à moindre coût devraient pouvoir surpasser les autres langages.<br>
Grâce à ses performances, le C++ est souvent utilisé pour développer des moteurs de jeu,<br>
des jeux et des applications de bureau. De nombreux jeux vidéo de niveau AAA sont construits en C++.<br>
<br>
Comme nous l’avons déjà mentionné, puisque vous avez un grand contrôle sur la façon dont votre application utilise les ressources,
votre application peut consommer très peu de ressources.<br>
Dans l’ensemble, comme le C++ peut être très performant entre de bonnes mains,<br>
les entreprises utilisent souvent le C++ pour coder des fonctions qui dépendent de la vitesse<br>
et de l’utilisation des ressources.<br></p>
<h2>Quelques examples de programmes basiques</h2>
<p class="textprint">Comme pour le C le C++ doit être compiler pour être éxécuter.<br>
Si vous voulez plus de précisions je vous laisse regarder la page du C dans laquel tout est expliqué.<br><br>
<img src="https://yard.onl/sitelycee/cours/c/lib/NouvelElement105.jpg" id="compilCC" ><br><br>
Pour un premier programme je vais vous montrez comment faire afficher un message, cela sera assez similaire avec le C mais il y aura quelques changements. Pour cela nous allons utilisé la fonction count avec le fameux "Hello world". il faut définir la sortie d'affichage standard std.<br><br>
Tout d'abord il faudra ce rendre dans <a href="http://www.codeblocks.org/downloads">code blocks</a> qu'il faudra au préhalable installer. Vous pouvez utiliser un autre compileur mais les examples seront fait sur celui la.<br><br>
Dans ces exemples je ne vous montrerez pas comment créé un projet sur Code Block car je juge cette étape assez simple d'accès avec des documentations ou des tutos sur internet.</p>
<div id="script">
<script type="text/javascript" src="../js/prism.js"></script>
<pre><code class="language-c++">#include &ltiostream>
using namespace std;
int main()
{
std::cout<<"Hello World";
return 0;
}
</code></pre>
</div>
<p>Voila, ceci est votre premier programme en C++. Il est très basique mais permet de bien comprendre les bases du C++.<br>
Nous simplifierons par la suite e déclarant le slux standard std en global.<br><br>
Tout d'abord on voit que pour mettre des bliblihotèques ce n'est pas la meme chose que en Python. Pour importer des bliblihotèques il faut mettre un " #include " puis le nom de la bliblihotèque dans une balise. Sur cette example les balise sont mals mise, il manque le crocher avant le nom de la bliblihotèques mais je ne peut pas le mettre sinon cela fait des problèmes avec le script en html.<br><br>
Il faut aussi mettre un "using namespace std" pour .....<br><br>
Ensuite il faut mettre des accolades pour délimités une fonction. Ensuite dans une fonction et en générale l'indentation du script n'est pas obligé, cela ne générera pas une erreur si vous ne le faites pas. Mais il est conseiller de le faire pour avoir des scripts propres. Pour finir a chaque fin de ligne sauf le début d'un fonction il faut mettre des points virgules, ceci est obligatoire et faira une erreur si vous n'en mettez pas.<br><br>
<div id="script">
<script type="text/javascript" src="../js/prism.js"></script>
<pre><code class="language-c++">#include &ltiostream>
using namespace std;
int main() {
cout<<"Hello World";
return 0;
}
</code></pre>
</div>
<p>Ce script est totalement correct mais est bien moins claire que celui d'avant. Souvent au début on a du mal a se rendre compte de la différence mais quand on commencera a faire de scripts bien plus volumineux cela deviendra très vite illisible.</p>
<p>Vous aurez remarquer aussi que contrairement au C ou c'est " printf " en C++ c'est " cout<< " .<br>
A par cette petite différence le code est similaire au C.</p>
<p><br>Maintenant que vous connaissez les bases, vous pouvez réaliser un programme très simple qui calcule l'aire d'un rectangle.<br><br>
Créez en premier temps le squelette:<br><br>
-inclusion des librairies essentielles: stdio <br>
-creation d'un espace : std<br>
-corps du programme (main)
<br>
<br>
<div id="script">
<script type="text/javascript" src="../js/prism.js"></script>
<pre><code class="language-c++">#include &ltiostream>
using namespace std;
int main() {
return EXIT_SUCCESS;
}
</code></pre>
</div>
<p>La fonction main s'exécuter au lancement du programme.<br><br>
Il vous reste à coder la demande à l'utilisateur de renseigner les longeur et largeur du rectangle, avant de calcuer son aire.<br>
Pour cela il convient de définir les variables qui contiendront ces deux données et leur type. C'est facile , elles seront numériques, typées décimales, donc en langage <strong>C++</strong> typées float<br><br>
Ajoutez à votre programme la définition des variables comme ci-dessous. Voici un exemple typique du laxisme facilement pris en <strong>C++</strong>: on peut déclarer ces variables en global, ou en local.<br><br>
En 2 lignes:<br><br>
-déclaration globales: au même niveau que les include, hors de toute fonction. L'avantage est que le contenu de ces variables est accesible depuis toutes les fonctions.<br>
<br>-déclaration locale: la variable n'est accessible que dasn la fonction et ne rete pas en mémoire après son utilisation: le recyclage avant l'heure!<br><br>
Vous déclarez une variable l pour la largeur, une variable L pour la longueur. <strong>C++</strong> est sensible à la casse, voilà encore un exemple de ce que l'on peut faire en <strong>C++</strong> mais que l'on ne doit pas faire: illisibilité, confusion,..</p>
<div id="script">
<script type="text/javascript" src="../js/prism.js"></script>
<pre><code class="language-c++">#include &ltiostream>
using namespace std;
int main() {
float l,L;
return EXIT_SUCCESS;
}
</code></pre>
</div>
<p>En <strong>C++</strong> les programmes sont assez optimiser et ne sont pas très lourd comparer au <strong>C</strong>. Mais vous ne pourrait pas mettre de texte dans une demande de saisie a l'utilisateur, ce qui est assez contraignant mais ne demande pas beaucoup de ressources.<br>
<br>
Nous allons donc d'abord aficher un message a l'utilisateur puis demander une saisie de texte par la suite comme ceci :</p>
<div id="script">
<script type="text/javascript" src="../js/prism.js"></script>
<pre><code class="language-c++">#include &ltiostream>
using namespace std;
int main() {
float l,L;
cout<<"Veuillez entrez la longeur :";
cin>>l;
cout<<"Veuillez entrez la largeur :";
cin>>L;
return EXIT_SUCCESS;
}
</code></pre>
</div>
<p>Une fois les demandes faites il ne vous reste plus qu'a faire le calcule et a afficher l'aire dans un message, pour cela nous allons utiliser que un " cout " dans lequel nous fairons le calcul des deux variables.<br><br></p>
<div id="script">
<script type="text/javascript" src="../js/prism.js"></script>
<pre><code class="language-c++">#include &ltiostream>
using namespace std;
int main() {
float l,L;
cout<<"Veuillez entrez la longeur :";
cin>>l;
cout<<"Veuillez entrez la largeur :";
cin>>L;
cout<<"L'aire de votre rectangle est "<< l*L <<" m";
return EXIT_SUCCESS;
}
</code></pre>
</div>
<p>Et voila vous venez de finir votre premier programme en <strong>C++</strong>, vous pouvez l'éxécuter et à le tester.</p>
</div>
<div class="partie">
<nav id="navigation">
<li><a class="lien" href="#ancre1">Le C++ qu'est ce que c'est?</a></li>
<li><a class="lien" href="#ancre2">Comment à été créé le C++ ?</a></li>
<li><a class="lien" href="#ancre3">Pourquoi est il beaucoup utilisé ?</a></li>
<li><a class="lien" href="#ancre4">Examples de programmes basiques</a></li>
</nav>
</div>
<script src= "https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="../js/scroll.js"></script>
</body>
</html>