Coding party Écrire un programme qui élève un nombre au carré Écrire un programme qui teste si un nombre est pair Écrire un programme qui calcule la factorielle.

Slides:



Advertisements
Présentations similaires
Les fonctions A quoi ça sert ?
Advertisements

Rappels C.
GEF 243B Programmation informatique appliquée Boucles §
GEF 243B Programmation informatique appliquée
1 UMLV 1. Introduction 2. Hachage ouvert 3. Hachage fermé 4. Implémentation des fonctions Méthodes de hachage.
L’ interruption de boucle
5. Les structures répétitives
Nous allons vous présenter: - Photoshop - Algorithme et programmation
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Langage C Révision.
Récursivité.
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Les tris.
Bases de la programmation en C++ 1 Les enchaînementsdinstruction Séquentiels. Exécutions dinstructions les unes à la suite des autres. Instructions séparées.
Structures de données IFT Abder Alikacem La classe string Département dinformatique et de génie logiciel Édition Septembre 2009 Département dinformatique.
Structures de données IFT Abder Alikacem Espace de nommage Département d’informatique et de génie logiciel Édition Septembre 2009.
1 PROTOTYPE PGC++ Vecteur_3D DÉFINITION. 2 class Vecteur_3D { private : float vx, vy, vz, vw; // Représentation en coordonnées homogènes. public : Vecteur_3D();
IFT 6800 Atelier en Technologies d’information
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
1 La récursion. Nous avons vu qu'un programme est constitué d'un ensemble de fonctions. Il est possible pour une fonction donnée d'appeler une autre fonction.
Algorithmique et langage C. Les traitements Comment utiliser les données.
Les Opérateurs Ils régissent toutes les opérations ou transformations sur les valeurs des variables. Opérateur d'affectation Opérateurs arithmétiques Opérateurs.
Structures alternative et répétitive
Formation C++. Hello World ! #include /* Commentaire sur plusieurs lignes */ int main() { //Affiche hello world std::cout
Les fichiers texte en C++
L’essentiel du langage C
B.Shishedjiev - Informatique II
Héritage multiple En langage C++, il est possible d’utiliser l’héritage multiple. Il permet de créer des classes dérivées à partir de plusieurs classes.
Boucles et Tests For( in ) { } While( ) { } Les exécutions conditionnelles (if.. else) peuvent être évitées avec des indexations logiques. Exemples: y=numeric(length(x));
Les tests.
Les surcharges d'opérateurs
Structures de contrôle
UMR 7619 Sisyphe Avril 2012 Alexandre Pryet Le langage une introduction pragmatique Cacul itératif.
Conception de Programmes - IUT de Paris - 1ère année – Cours 8 – Les entrées/sorties Comment fonctionnent les opérateurs > pour les types élémentaires.
1 Programmation en C++ Marianne Morris. 2 Intro générale à la programmation On a déjà étudié le langage assembleur Langage de bas niveau Meilleur que.
Introduction au langage C : Structures de contrôle 1 ère année Génie Informatique Dr Daouda Traoré Université de Ségou
Let rec f n = if n = 0 then true else g (n-1) g n = if n = 0 then false else f (n-1) val f : int -> bool = val g : int -> bool =
Les structures de contrôle
Ecrire 10 fois "Bonjour" sur 10 lignes différentes
Langage de programmation
PRO-1027 Programmation Scientifique en C
TRAITEMENT D’IMAGES Semaine 05. AGENDA DE LEÇON Documentation officielle d’OpenCV Écrire du texte Source vidéo TP1.
M. BENJELLOUN : 2005 Le but final est de programmer un jeu où l'ordinateur choisira un nombre aléatoire entre 0 et 100 que vous devez deviner.
Cours de Langage C Récursivité. Objectifs de la séance 11 Connaître la récursivité. Mesurer un temps d’exécution. 2.
C++ Les fonctions. Présentation Utilité : Dès qu'un programme dépasse la centaine de lignes de code, il est pratique de pouvoir le décomposer en plusieurs.
CINI – Li115 1 Semaine 4 Révisions ● Questions de cours ● Types des expressions ● Déclaration de variables ● Instruction conditionnelle et boucles ● Structure.
1 Programmation en C++ C++ de base ● Programme C++ ● Variables, objets, types ● Fonctions ● Namespace ● Tests ● Boucles ● Pointeurs, références.
1 Programmation en C++ C++ de base ● Programme C++ ● Variables, objets, types ● Types et opérations fondamentales ● Tests ● Boucles ● Pointeurs, références.
UE2 - M22 Licence acoustique
Algorithme de recherche
Présentation python : Épisode 2
>>> Amphi Python
Langage C Structure d'un programme Types Lire Ecrire Tester
Algorithmique et programmation de modèles numériques
SIF-1053 Architecture de ordinateurs
Programmation Impérative II
Codage Indenter le code Limiter la portée des variables Traiter les erreurs en premier Utiliser le switch au delà de 3 tests en cascades Ne jamais utiliser.
Les flux en C++ Les flux d’entrées sorties Les flux standards.
« Un langage de programmation est une convention pour donner des ordres à un ordinateur. Ce n’est pas censé être obscur, bizarre et plein de pièges subtils.
Coding party Écrire un programme qui élève un nombre au carré Écrire un programme qui teste si un nombre est pair Écrire un programme qui calcule la factorielle.
Programmation en C++ C++ de base
Eléments de base du langage C
MINISTÈRE DE L’ENSEIGNEMENT SUPÉRIEUR ET DE LA RECHERCHE SCIENTIFIQUE
Compléments sur Python (EduPython)
Question 1 Pour afficher un tableau d’entiers tab en C :
Le langage C# : Partie 1.
VRAI ou FAUX.
Yves Chevallier & Andrew Watson
Python Nicolas THIBAULT
Eléments de base du langage C
Transcription de la présentation:

Coding party Écrire un programme qui élève un nombre au carré Écrire un programme qui teste si un nombre est pair Écrire un programme qui calcule la factorielle d’un nombre Écrire un programme qui teste si un nombre est premier Écrire un programme qui inverse un texte

Python – v1.0 # saisie nombre premier ou pas... nbr = input("Quel nombre voulez-vous tester ? ") # initialisation result = "premier" for i in range (2, nbr): # on teste systématiquement TOUS les diviseurs if nbr % i == 0: result = "non premier" #affichage print(result)

Python – v2.0 # saisie nombre premier ou pas... nbr = input("Quel nombre voulez-vous tester ? ") # initialisation result = "premier" if nbr % 2 == 1: # on élimine les nombres pairs for i in range (3, nbr): if nbr % i == 0: result = "pas premier" break # on sort dès qu'on trouve un diviseur else: if nbr > 2: print(result)

break & continue total = 0 maxi = input("Donnez un intervalle pas trop grand") # que fait-on ? for i in range (1, maxi): if i % 2 == 0 or i % 3 == 0: continue if i % 101 == 0: break total += 1 #affichage... mais quoi ? print(total) Structure de contrôle non algorithmique Sortie de boucle à posteriori

Python – v3.0 # saisie nombre premier ou pas... nbr = input("Quel nombre voulez-vous tester ? ") # initialisation premier = True if nbr % 2 == 1: # on élimine les nombres pairs i = 3 # on ne teste pas les diviseur pairs # on ne peut utiliser une boucle for while i < nbr and premier == True: # CE = CC ^ !CA if nbr % i == 0: premier = False # on sort dès qu'un diviseur est trouvé else: i += 2 # pas de diviseur pair if nbr > 2: premier = False #affichage if premier == True: print("premier") else: print("pas premier")

Python – v3.1 # saisie nombre premier ou pas... nbr = input("Quel nombre voulez-vous tester ? ") # initialisation premier = True if nbr % 2 == 1: # on élimine les nombres pairs i = 3 n = (int) sqrt(nbr) + 1 #optimisation while i < n and premier == True: # CE = CC ^ !CA if nbr % i == 0: premier = False else: i += 2 # on ne teste pas les diviseurs pairs if nbr > 2: # affichage if premier == True: print("nombre premier") else: print("ce nombre n'est pas premier")

Langage C #include <stdio.h> // traitement #include <math.h> int main() { // declaration int nbr, i = 3; unsigned char premier = 1; // test si un nbr est premier ou pas... printf("Quel nombre voulez-vous tester ? "); scanf("%d", &nbr); int n = (int) sqrt(nbr) + 1; // traitement If ( nbr > 2 && nbr % 2 == 0 ) // test nbr pair premier = 0 ; else while ( premier && i < n ) if ( nbr % i == 0 ) i += 2 ; // affichage if ( premier ) printf("nombre premier"); printf("ce nombre n'est pas premier"); return 0; }

Langage C++ #include <iostream> // traitement #include <cmath> using namespace std; int main() { int nbr, i(3); // declaration bool premier = true; // test si un nbr est premier ou pas... cout << "Quel nombre voulez-vous tester ? "; cin >> nbr; // traitement int n = static_cast<int>(sqrt(nbr)) + 1; // traitement if ( nbr > 2 && nbr % 2 == 0 ) // test nbr pair premier = false; else while ( premier && i < n ) if ( nbr % i == 0 ) i += 2; // affichage if ( premier ) cout << "nombre premier" << endl; cout << "ce nombre n'est pas premier" << endl; return 0; }

Coding party++ Écrire une fonction qui teste si un nombre est premier Écrire un programme qui indique le nombre total de nombres premiers dans un intervalle [1..n] Modifier le programme ci-dessus pour qu’il indique le temps t de traitement Tracer le graphique t = f(n) pour un algorithme optimisé et non optimisé

Python import time def est_premier(nbr): # function: teste si un nombre est premier # in: nbr: nombre à tester # out: vrai si nbr est premier, faux sinon premier = True if nbr % 2 == 1: # on élimine les nombres pairs i = 3 n = (int) sqrt(nbr) + 1 while i < n and premier == True: if nbr % i == 0: premier = False else: i += 2 # pas de diviseurs pairs if nbr > 2: return premier # cherche les nombres premiers dans un intervalle nbr = input("Indiquez l'intervalle") start = time.clock(); # traitement total = 0 for i in range (1, nbr+1): if est_premier(i) == True: total += 1 end = time.clock() # affichage print "temps traitement : {0} ms".format((end - start) * 1000) print "total : {0}".format(total)

Langage C #include <time.h> unsigned char est_premier(const int nbr) { // function: teste si un nombre est premier // in: nbr: nombre à tester // out: vrai si nbr est premier, faux sinon const int n = (int) sqrt(nbr) + 1; int i = 3; unsigned char premier = 1; if ( nbr > 2 && nbr % 2 == 0 ) // test nbr pair premier = 0; else while ( premier && i < n ) if ( nbr % i == 0 ) i += 2; return premier; } int main() { // declaration int nbr, total = 0; // test si un nbr est premier ou pas... printf("Donnez un intervalle "); scanf("%d", &nbr); clock_t start = clock(); for (int i=1; i <= nbr; i++) if ( est_premier(i) ) total++; clock_t end = clock(); printf("temps traitement : %.2Lf ms\n", (long double) (end - start) / CLOCKS_PER_SEC * 1000); printf("total : %d", total); return 0; }

Langage Python