switch case Instruction répétitive Rappel: while / do while for Fonctions Introduction TCH010-Informatique

Documents pareils
1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Introduction au langage C


Java Licence Professionnelle CISII,

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

Programmation en langage C

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel)

Algorithmique et Programmation, IMA

Le prototype de la fonction main()

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

#include <stdio.h> #include <stdlib.h> struct cell { int clef; struct cell *suiv; };

Claude Delannoy. 3 e édition C++

Cours d Algorithmique et de Langage C v 3.0

Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire

Les structures de données. Rajae El Ouazzani

MINIMUM. connaissances nécessaires à la programmation des microcontrôleurs PIC18 en langage C (une introduction au langage c A.N.S.

INF111. Initiation à la programmation impérative en C amini/cours/l1/inf111/ Massih-Reza Amini

Outils pour la pratique

Programmation Classique en langage C

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Langage Éric Guérin 5 octobre 2010

3IS - Système d'exploitation linux - Programmation système

Brefs rappels sur la pile et le tas (Stack. / Heap) et les pointeurs

Programmer en JAVA. par Tama

Les structures. Chapitre 3

V- Manipulations de nombres en binaire

Corrigé des TD 1 à 5

Examen Médian - 1 heure 30

Plan du cours. Historique du langage Nouveautés de Java 7

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

Programmation en langage C Eléments de syntaxe

Le Langage C Licence Professionnelle Qualité Logiciel Pr. Mouad BEN MAMOUN ben_mamoun@fsr.ac.ma Année universitaire 2011/2012

Programmation C. J.-F. Lalande. 15 novembre 2012

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Initiation. àl algorithmique et à la programmation. en C

Le langage C. Séance n 4

INITIATION A LA PROGRAMMATION

Notions fondamentales du langage C# Version 1.0

Les processus légers : threads. Système L3, /31

Programmation C++ (débutant)/instructions for, while et do...while

Conventions d écriture et outils de mise au point

Projet de programmation (IK3) : TP n 1 Correction

I. Introduction aux fonctions : les fonctions standards

TP2 : tableaux dynamiques et listes chaînées

SUPPORT DE COURS. Langage C

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing

Introduction au Langage de Programmation C

Corrigé des exercices sur les références

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

Programmation système I Les entrées/sorties

Chapitre 1 : La gestion dynamique de la mémoire

Programmation système de commandes en C

Examen d informatique première session 2004

Programme Compte bancaire (code)

Introduction à l algorithmique et à la programmation M1102 CM n 3

Cours de C. Petits secrets du C & programmation avancée. Sébastien Paumier

2. Comprendre les définitions de classes

Cours Informatique Master STEP

Algorithmique & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence

COURS D'INFORMATIQUE: LANGAGE C NOTES DE COURS

Bases de programmation. Cours 5. Structurer les données

Initiation à la programmation en Python

Cours Programmation Système

Les fichiers. Chapitre 4

as Architecture des Systèmes d Information

COMPARAISONDESLANGAGESC, C++, JAVA ET

STAGE IREM 0- Premiers pas en Python

Le Langage C++ Patrick TRAU - ULP IPST version du 02/10/05

TRAVAUX PRATIQUES Programmation Système Langage C / Système UNIX. 2 e année Génie Informatique

INF 321 : mémento de la syntaxe de Java

ACTIVITÉ DE PROGRAMMATION

Notes du cours 4M056 Programmation en C et C++ Vincent Lemaire et Damien Simon

IUT ANNECY Département Mesures Physiques Cours d informatique Initiation au langage C

Algorithmique, Structures de données et langage C

30.avr.10 Présentation miniprojet. 9.mars.10 Cours 3 4.mai.10 Cours C mars.10 Cours 4 11.mai.10 Cours C++ 2

Programmation système en C/C++

Cours d algorithmique pour la classe de 2nde

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES. Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

Java Licence Professionnelle CISII,

Chap III : Les tableaux

La programmation des PIC en C. Les fonctions, les interruptions.

Solutions du chapitre 4

Cours Langage C/C++ Programmation modulaire

Cours de programmation avancée. Le langage C. Université du Luxembourg

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars

Derrière toi Une machine virtuelle!

Petite initiation au langage C et au graphisme SDL

DNS Server RPC Interface buffer overflow. Céline COLLUMEAU Nicolas BODIN

TD2/TME2 : Ordonnanceur et Threads (POSIX et fair)

Archivage Messagerie Evolution pour usage HTML en utilisant Hypermail

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Aide mémoire UML & Java 1ère partie : Introduction. marc.lemaire@u-cergy.fr

Transcription:

Instruction sélective switch case Instruction répétitive Rappel: while / do while for Fonctions Introduction

switch-case Instruction de choix multiple Le bloc commence par le mot switch et sa variable de contrôle La variable de contrôle est placée entre parenthèses La sélection se comporte comme un if qui évalue des cas d égalité (==) Les instructions à exécuter se terminent par le mot break Le dernier break est optionnel Exemple : switch(choix){ h i case a : printf(" vous avez choisi a ");break; case b : printf(" vous avez choisi b "); break; case q : printf(" vous avez choisi q "); break;

switch-case On peut mettre plusieurs case : consécutifs Exemples : switch(choix){ case a : case b : case q : printf(«choix valide»);break; switch(choix){ case a : case b : case q : printf(«choix valide»);break;

switch case On peut ajouter une option default à la fin Le cas default est exécuté si tous les cas précédents sont faux default agit comme un else Exemple : switch(choix){ case a : printf(«vous avez choisi a»);break; case b : printf(«vous avez choisi b»); break; case q : printf(«vous avez choisi q»); break; default : printf(«choix invalide»);

switch case Toutes les instructions entre case : et break sont exécutées. Exemple : switch(choix){ case a : printf(«vous avez choisi a»); case b : printf(«vous avez choisi b»); case q : printf(«vous avez choisi q»); default : printf(«choix invalide»); Les quatre messages seront affichés si a est choisit

Forme générale : switch(expression){ case option1 : instruction(s); break; case option2 : case option3 : instruction(s); break; default : instruction(s); ti

Quel message affiche ce programme pour chaque chiffre (0-9)? printf("\nentrez un chiffre (entre 0 et 9):\n"); scanf("%d,&n); switch(n) { case 0: printf(«vous avez entre 0.\n \n"); break; case 3: case 5: case 7: printf("%d est premier\n",n); break; case 2: printf("%d est premier\n",n); case 4: case 6: case 8: printf("%d est pair\n",n); break; case 1: case 9: printf("%d est un carré parfait\n«,n); break; default: printf(«seuls les valeurs de 0 a 9 sont permises\n"); break;

while La condition i de répétition é i est évaluée é au début du bloc Si la condition est fausse, le bloc n est pas exécuté while(expression booléenne){ tâches à répéter tant que l expression, qui suit le while, est différente de zéro do while La condition de répétition est évaluée à la fin du bloc Le bloc est exécuté au moins une fois même si la condition est fausse do{ tâches à répéter tant que l expression, qui suit le while, est différente de zéro while(expression booléenne);

while do do while

Exemple : Validation d un nombre entré qui doit être entre 1 et 10 #include <stdio.h> #include <stdlib.h> int main(void){ int nombre; do{ printf(" Entrez un nombre entre 1 et 10 svp : "); scanf ("%d", &nombre); if(nombre < 1 nombre > 10) printf(" Votre nombre est invalide "); while(nombre < 1 nombre > 10); printf(" Votre nombre est valide "); return EXIT_SUCCESS;

Cas particulier: Souvent on connaît le nombre d itérations Exemple de réalisation avec un while : int tour = 1; while (tour <= 10 ){ printf("%d ",tour); tour++; initialisation Analyse de la condition d arrêt de la boucle Convergence vers la condition d arrêt

for Sert lorsqu on connaît le nombre d itérations Peut être remplacé par while ou do while Forme générale for (initialisation;expression booléenne;itération ){ Instructions

Forme générale for (initialisation;expression booléenne;itération ){ Instruction(s) ti \\ traitement t Initialisation : i=1 Condition d arrêt: i<=10 Itération: i++ int i; for(i=1; i<=10; i++) { printf( i=%d\n,i);

Initialisation : i=1 Condition d arrêt : i<=10 Itération : i++ L initialisation est faite une fois avant l évaluation de l expression booléenne L expression booléenne est évaluée avant chaque boucle et doit se lire «tant que» int i; for(i=1; i<=10; i++) { printf( i=%d\n,i); i=1 i++ L itération est faite en dernier, à chaque tour de boucle, après le traitement Les accolades sont optionnelles s il n y a qu une instruction dans la boucle i<=10 FAUX VRAI printf

Écrire une boucle for qui calcule le factoriel d un nombre. Définition du factoriel: 0! = 1 1! = 1 n! = n * (n-1)! Exemple : 5! = 5 * 4 * 3 * 2! = 120

int i; long fact = 1; long n; //compteur de boucle //sert à calculer le factoriel //nombre à lire scanf(" %ld ", &n); //lecture du nombre if(n == 0 n == 1) printf("1 "); else for(i = 2; i<=n;i++) fact = fact * i; printf("%ld ",fact); //le cas limites //calcul du factoriel //affichage du résultat

Vous devez être en mesure de comprendre et d utiliser: Les instructions de sélection : if else switch case default Les instructions de répétition: while do... While for

Utilisation de procédures et de fonctions Définition : Les procédures et les fonctions sont des sous-programmes qui se démarrent à partir d un programme (ex: pow, printf, scanf, cos,...) Une fonction renvoie une valeur : le résultat de la fonction Une procédure ne renvoie rien (void) Les sous-programmes peuvent nécessiter des valeurs qu il faut leur fournir à l appel : les paramètres effectifs

Pour utiliser un sous-programme, on doit connaître Son nom Le type et la signification de la valeur de retour (s il y a lieu) Le nombre, le type et la signification des paramètres effectifs Le traitement qui sera effectué On retrouve ces informations dans ce qu on appelle un prototype de sous-programme

Exemple de prototypes : double cos(double x) double sin(double x) double pow(double x, double y) Les librairies du C (stdio.h, math.h,...) vous offrent une panoplie p de sous-programmes Consultez l aide de Turbo-C (f1)