IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Faut-il pratiquer l'algorithmique avant de se lancer dans un langage ?


Sujet :

Algorithmes et structures de données

  1. #1
    Candidat au Club
    Homme Profil pro
    auto-formation
    Inscrit en
    Octobre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : auto-formation

    Informations forums :
    Inscription : Octobre 2015
    Messages : 8
    Points : 4
    Points
    4
    Par défaut Faut-il pratiquer l'algorithmique avant de se lancer dans un langage ?
    Bonjour,

    Je suis un programmeur assez débutant.

    Je me posais la question de la pertinence de programmer en c++ alors que j'ai du mal avec les algorithmes. J'ai commencé il y a peu mais la manipulation des boucles conditionnelles m'est difficile quand le problème est un peu complexe.
    Je n'ai pas eu de cours sur la récursivité et j'aborde déjà un exercice avec ce concept.

    Ma question : faut-il commencer par de l’algorithmique avant de pratiquer un langage : pour "former et entraîner" son cerveau à des problèmes de prog ?

    Deuxième question : est-ce que l'algorithmique aborde la Programmation orientée objet ?

    merci à vous !

  2. #2
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 238
    Points : 13 443
    Points
    13 443
    Par défaut
    Bonjour

    C'est comme de demander s'il vaut mieux apprendre la langue d'abord ou la vie d'abord... tu apprends les deux en même temps.

    Un algorithme est une recette, un procédé, un mode d'emploi. Il n'est pas attaché au langage.

    Tu mélange tout ce vocabulaire pour faire une discussion qui va être un nid à trolls.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  3. #3
    Candidat au Club
    Homme Profil pro
    auto-formation
    Inscrit en
    Octobre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : auto-formation

    Informations forums :
    Inscription : Octobre 2015
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Merci Flodelarab!

    Mais je ne voulais pas faire de cette discussion un nid à trolls bien sûr !
    Et puis votre forum est bien modéré d'après ce que j'ai compris...

    Bon. J'essaierai de m’entraîner sur l'algorithmique alors.

    Je crois que le CNAM propose des cursus dans ce domaine... A voir...

    Et sinon je vais faire aussi des exos de c++ sur les points que je ne maîtrise pas du tout.

    Je suis à un niveau "zéro" + 1 mois
    Même si j'ai eu par le passé des notions de base.

    Bonne journée

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    Ce qu'il faut bien voir, c'est que les concepts techniques comme Programmation Orientée Objet, ou Aspects, procédural, Patterns, Test-Driven development etc etc, sont des "vues", des paradigmes, pour mettre en oeuvre une pensée, dans un but : celui de faire un programme qui fait quelque chose..

    Dans cette optique, si on prend une analogie, tu peux te rendre d'un point A à un point B à pied, en bus, en métro, en vélo, en voiture. A pied, tu peux y aller en marchant, en courant, en marchant à l'envers, etc etc..

    L'algorithmique consiste simplement à dire (dans ce cas) : je vais aller du point A au point B et à isoler le chemin (rue X, puis à angle droit rue Y, etc etc). Le langage sera le moyen de transport ou son dérivé (marcher, courir, etc) (qui éventuellement affectera la manière d'effectuer la tâche : peut-être qu'un sens interdit empêchera de prendre la rue Y et qu'il faudra prendre un autre itinéraire, ou que des escaliers imposeront la marche à pied sur l'itinéraire choisi).




    Ce sont donc 2 problèmes différents, éventuellement liés.

    L'algorithmique sera plus l'analyse mathématique et logique du problème.

    Cependant, l'utilisation de particularités de programmation ou conception peut faire modifier l'algorithmique : faire une recherche dans / utiliser un tableau ou une liste chaînée ne se fera pas de la même manière.. L'atteinte de conditions aux limites ne se fera pas de la même manière dans une boucle for ou while..


    En conclusion, les 2 aspects sont aussi importants : tu veux savoir conduire une voiture d'une part (le langage), et savoir établir un itinéraire (l'algorithmique) d'autre part.
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  5. #5
    Candidat au Club
    Homme Profil pro
    auto-formation
    Inscrit en
    Octobre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : auto-formation

    Informations forums :
    Inscription : Octobre 2015
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Merci pour ta réponse très bien formulée.. Elle est aidante !

  6. #6
    Expert confirmé Avatar de DonQuiche
    Inscrit en
    Septembre 2010
    Messages
    2 741
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 2 741
    Points : 5 485
    Points
    5 485
    Par défaut
    Coder c'est additionner des problèmes de syntaxe et d'outillage au problème algorithmique lui-même. C'est donc strictement plus difficile que l'algorithmique seule : non seulement tu dois créer un algorithme mais en plus tu dois l'encoder selon des règles strictes.


    Cela dit coder directement permet d'une part de rendre l'exercice plus amusant et d'autre part de pouvoir tester rapidement telle ou telle solution et modification, et de pouvoir exécuter un programme pas-à-pas pour peu que l'on ait appris à se servir du débogueur.


    Dans l'idéal je privilégierais la seconde option à condition de trouver pour le débutant un langage simple avec des outils simples. Le C++ ne serait pas évidemment pas le meilleur choix pour ça ! Peut-être Python + SublimeText ou Processing.

  7. #7
    Membre éprouvé
    Avatar de Aooka
    Homme Profil pro
    Scripting Powershell & Wlangage
    Inscrit en
    Juillet 2015
    Messages
    225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Scripting Powershell & Wlangage

    Informations forums :
    Inscription : Juillet 2015
    Messages : 225
    Points : 1 093
    Points
    1 093
    Par défaut
    Salut,

    Tu peux apprendre les deux en même temps. Mais c'est toujours mieux d'avoir des notions d’algorithmie.

    Voici la liste des cours sur développez qui pourront t'être utile.

    Bonne chance

  8. #8
    Candidat au Club
    Homme Profil pro
    auto-formation
    Inscrit en
    Octobre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : auto-formation

    Informations forums :
    Inscription : Octobre 2015
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Merci Donquiche et Martin pour vos réponses ! Très intéressantes. Martin merci pour les liens...

    En fait je veux vraiment faire du c++...

    En vous remerciant !

  9. #9
    Membre éprouvé
    Avatar de Aooka
    Homme Profil pro
    Scripting Powershell & Wlangage
    Inscrit en
    Juillet 2015
    Messages
    225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Scripting Powershell & Wlangage

    Informations forums :
    Inscription : Juillet 2015
    Messages : 225
    Points : 1 093
    Points
    1 093
    Par défaut
    Encore quelques liens alors,

    Page principal C++ Developpez
    Tout les cours de C++
    FAQ: Foire aux questions (questions, réponses) sur le C++

    Pense à bien voire la FAQ avant de poster tes problèmes, il y a beaucoup de réponses là-bas.
    Et si tu souhaite codé sous Windows, choisis bien ton IDE (logiciel: environnement de développement, par exemple : C++ builder, Code::Blocks et j'en passe) selon tes besoins, envies.
    Si tu est sous windows, tu peux passé directement par l'éditeur de texte (style emacs) !

    Et pour le C++, il est tout à fait possible de se lancer directement sans passé par des cours d'algo ! Tu apprendra à faire des algo en temps voulu quand tu maîtrisera le langage et que tu souhaitera allé plus loin !

  10. #10
    Candidat au Club
    Homme Profil pro
    auto-formation
    Inscrit en
    Octobre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : auto-formation

    Informations forums :
    Inscription : Octobre 2015
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Merci Martin.. En fait je code sous linux !
    J'utilise Geany et j'avais essayé Code::blocks...
    C'est vraiment pas mal...

    Merci pour les liens vers tes tutos !

Discussions similaires

  1. Faut il apprendre le C avant le C++ ?
    Par Yukiho dans le forum Débuter
    Réponses: 51
    Dernier message: 13/10/2014, 22h13
  2. Réponses: 1
    Dernier message: 21/10/2009, 11h38
  3. Avant de me lancer dans AS3 une question
    Par Claude_Azoulai dans le forum ActionScript 3
    Réponses: 2
    Dernier message: 17/08/2007, 17h22
  4. Questions avant de me lancer tête baissée
    Par ustilago dans le forum Access
    Réponses: 3
    Dernier message: 11/08/2006, 18h16
  5. Charger application avant de la lancer
    Par Ulmo dans le forum Windows
    Réponses: 4
    Dernier message: 27/03/2006, 03h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo