Question sur la programmation pour débutant

Fermé
totomacko1 Messages postés 118 Date d'inscription dimanche 18 novembre 2012 Statut Membre Dernière intervention 30 juin 2017 - 28 avril 2013 à 19:30
totomacko1 Messages postés 118 Date d'inscription dimanche 18 novembre 2012 Statut Membre Dernière intervention 30 juin 2017 - 29 avril 2013 à 20:39
Bonjour,

J'aimerai savoir si je fais le bon choix en commençant à apprendre la programmation en choisissant du C. J'utilise comme logiciel Code Blocks. Y a t il une différence entre chaque logiciel qui permettent la programmation ?
Je suis sur un tuto assez sympa du "site du zéros". ( lien : https://openclassrooms.com/fr/courses )
Suis -je au bonne endroit ?
Et quelques petits conseils de base pourraient m'aider.
Je suis vraiment un débutant et je fais des trucs basiques.
Voila un exemple :

[URL=http://www.hostingpics.net/viewer.php?id=764377Sanstitre.png][IMG]http://img11.hostingpics.net/pics/764377Sanstitre.png[/IMG][/URL]

J'ai cherché pour faire une calculatrice ou l'on peut choisir le signe de l'opération mais j'ai pas trouvé. Je peux faire qu'une opération distincte à chaque lancement. Un peu d'aide pour trouver la solution ? ^_^

En gros, voilà ce que je sais :
-printf = afficher .....
-scanf = saisir une entrée
-#incluse .... = nouvelle bibliothèque

Pas grand chose, mais à quoi sert ce qu'on rentre au début : " int main(int argc, char *argv[])"

Et encore une petite chose ! J'ai ce message à chaque lancement de code blocks :
[URL=http://www.hostingpics.net/viewer.php?id=235090Capture.png][IMG]http://img11.hostingpics.net/pics/235090Capture.png[/IMG][/URL]
Une idée du problèmes.

Un grand bravo/merci à celui qui répondra à toutes ces questions !

A voir également:

2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 841
28 avril 2013 à 19:43
Bonjour,
#include (et non incluse), c'est pour inclure un fichier en-tête (header), pas une bibliothèque.

Pas grand chose, mais à quoi sert ce qu'on rentre au début : " int main(int argc, char *argv[])"
Tout programme doit comporter une fonction main().
main(int argc, char*argv[]) permet de récupérer les arguments envoyés en paramètre du programme. Par exemple, si tu exécutes ton programme : nomProgramme 1 2 3, alors tu pourras récupérer dans le programme 1, 2 et 3. argv[1]=1, argv[2]=2, et argv[3]=3.

Pour le siteduzero, oui c'est pas mal pour commencer : très attrayant et motivant pour débuter.

Pour ton problème au lancement de Code::Blocks, c'est très simple. Il suffit de lire l'anglais. Cela donne des astuces (tips). Il suffit de décocher la case (show tips at startup. En français : afficher les conseils au démarrage).

Et enfin, commencer par le C me paraît difficile en autodidacte. Lorsque l'on débute la programmation, deux choses sont difficiles : l'algorithmique et le langage lui-même. Autant donc choisir un langage simple pour se concentrer sur l'algorithmique (comme le python). Mais si t'es vraiment motiver, il n'y aura pas de problème. Et puis on sera là pour t'aider ;-).

Cdlt,
0
totomacko1 Messages postés 118 Date d'inscription dimanche 18 novembre 2012 Statut Membre Dernière intervention 30 juin 2017 23
28 avril 2013 à 19:59
Donc si j'ai bien compris, main est en quelques sortes le titres du programme que l'on pourra utiliser dans un autre programme pour les lier ensemble. C'est ça ?
Et ça ne serai pas la solution pour pouvoir choisir le signe de mon opération dans mon petit programme ?

Ensuite, pour le Python. S'il est plus simple c'est qu'il offre moins de possibilité que le C non ? C'est comme Photofiltre et Gimp, Gimp est plus difficile à manier mais plus complet.
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 841
28 avril 2013 à 20:18
Donc si j'ai bien compris, main est en quelques sortes le titres du programme que l'on pourra utiliser dans un autre programme pour les lier ensemble. C'est ça ?
Pas exactement.
Un programme peut avoir n'importe quel nom. Lorsque tu exécutes ce programme, il appellera la fonction main(). C'est le main() qui appellera les autres fonctions.

Et ça ne serai pas la solution pour pouvoir choisir le signe de mon opération dans mon petit programme ?
Pas du tout. Pour le signe, il faut créer la fonctionnalité. L'idée est de que l'utilisateur tape un nombre, un caractère (le signe de l'opération) et un second nombre.
Si le signe vaut '-' alors il faut afficher nombre1-nombre2.
Si le signe vaut '+' alors il faut afficher nombre1+nombre2.
Etc.
Continue les tutos, tu sauras le faire tout seul.

Ensuite, pour le Python. S'il est plus simple c'est qu'il offre moins de possibilité que le C non ?
En partie vraie. Tu peux effectivement faire des choses en C que tu ne pourras pas faire en Python. Mais il est peu probable que tu utilises ces possibilités ^^. Et quand bien même ce n'est pas une raison de nier un autre langage. Tu peux très bien faire tout un programme en Python par exemple et faire une routine en C.
L'avantage du Python est qu'il est syntaxiquement simple, plus facile à maintenir. Et tu développeras un programme beaucoup plus rapidement que le même en C.
0
totomacko1 Messages postés 118 Date d'inscription dimanche 18 novembre 2012 Statut Membre Dernière intervention 30 juin 2017 23
28 avril 2013 à 20:24
Bon, je n'ai pas trop compris l'histoire du "main" mais ce n'est pas grave.
Je vais rester sur le C car j'avais déjà essayer et abandonner mais la, je retente le coup. On verra bien ce que ça donne cette fois !
0
totomacko1 Messages postés 118 Date d'inscription dimanche 18 novembre 2012 Statut Membre Dernière intervention 30 juin 2017 23
29 avril 2013 à 18:42
J'ai trouvé la solution pour choisir son opération !
Il faut utiliser "if". J'ai fait ci dessous le choix entre une soustraction et une addition mais je seul la réponde de l'addition marche, je n'ai pas continuer ;)

-------------------------------------------------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
int nombre1 = 0, nombre2 = 0, resultat = 0;
int option1 = 0;
printf ("Quelle operation souhaitez vous realiser ? Tapez le numero de votre option\n1 : addition\n2 : soutraction\n");
scanf ("%d", &option1);
if (option1 = 1)
{
printf ("Entrez le nombre 1 : ");
scanf ("%d", &nombre1);
printf ("Entrez le nombre 2 : ");
scanf ("%d", &nombre2);
resultat = nombre1 + nombre2;
printf ("%d + %d = %d", nombre1, nombre2, resultat);
}
return 0;
}

------------------------------------------------------------------------------------------------------
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 841
29 avril 2013 à 19:26
If (option1=1)
L'opérateur de comparaison est == et non =.

Sinon ton code est mal parti algorithmiquement parlant. La saisie des nombres se fait dans tous les cas. Donc ce n'est pas a mettre dans une condition.
De plus je te conseille d'utiliser des fonctions.
0
totomacko1 Messages postés 118 Date d'inscription dimanche 18 novembre 2012 Statut Membre Dernière intervention 30 juin 2017 23
29 avril 2013 à 19:32
Oui mais la fonction je verrai plus tard, je connais pas encore donc je fais avec les moyens du bord ;)
Est ce que tu pourrais m'aider ici :
http://www.commentcamarche.net/forum/affich-27702387-un-peu-d-aide-sur-la-creation-d-une-calculatrice


Encore merci ^_^
0