• Aucun résultat trouvé

Informatique et Science du Numérique

N/A
N/A
Protected

Academic year: 2022

Partager "Informatique et Science du Numérique"

Copied!
20
0
0

Texte intégral

(1)

Présentation

1

Informatique et Science du Numérique

(2)

Présentation

2

Informatique et Science du Numérique

Coding party

1. Écrire un programme qui élève un nombre au carré 2. Écrire un programme qui teste si un nombre est pair

3. Écrire un programme qui calcule la factorielle d’un nombre

4. Écrire un programme qui teste si un nombre est premier

5. Écrire un programme qui inverse un texte

(3)

Présentation

3

Informatique et Science du Numérique

Python

# saisie

nbr = input("Quel nombre voulez-vous elever au carre ? ")

# traitement

result = nbr * nbr

# affichage

print(result)

(4)

Présentation

4

Informatique et Science du Numérique

Langage C

#include <stdio.h>

int main()

{ // declaration int result, nbr;

// saisie

printf("Quel nombre voulez-vous elever au carre ? ");

scanf("%d", &nbr);

// traitement result = nbr * nbr;

// affichage

printf("%d", result);

return 0;

}

(5)

Présentation

5

Informatique et Science du Numérique

Langage C++

#include <iostream>

using namespace std;

int main()

{ int nombre, carre;

cout << "Quel nombre voulez-vous elever au carre ? ";

cin >> nombre;

carre = nombre * nombre;

cout << "son carre est " << carre << endl;

return 0;

}

(6)

Présentation

6

Informatique et Science du Numérique

Python

# saisie nombre pair/impair

nbr = input("Quel nombre voulez-vous tester ? ")

# traitement if nbr % 2 == 1:

print "nombre impair"

else:

print "nombre pair"

(7)

Présentation

7

Informatique et Science du Numérique

Langage C

#include <stdio.h>

int main()

{ // declaration int nbr;

// saisie nombre pair/impair

printf("Quel nombre voulez-vous tester ? ");

scanf("%d", &nbr);

// traitement if ( nbr % 2 )

printf("nombre impair");

else

printf("nombre pair");

return 0;

}

(8)

Présentation

8

Informatique et Science du Numérique

Langage C++

#include <iostream>

using namespace std;

int main() { int nombre;

cout << "Quel nombre voulez-vous tester ? ";

cin >> nombre;

if ( nombre % 2 )

cout << "nombre impair" << endl;

else

cout << "nombre pair" << endl;

return 0;

}

(9)

Présentation

9

Informatique et Science du Numérique

Python

# calcul factorielle

nbr = input("Quel nombre voulez-vous calculer ? ")

# traitement n = 1

for i in range(2, nbr+1):

n = n * i

print(n)

(10)

Présentation

10

Informatique et Science du Numérique

Langage C

#include <stdio.h>

int main()

{ // declaration int nbr, n = 1;

// calcul factorielle

printf("Quel nombre voulez-vous calculer ? ");

scanf("%d", &nbr);

// traitement

for (int i = 2 ; i <= nbr ; i++ ) n = n * i ;

printf("%d", i);

return 0;

}

(11)

Présentation

11

Informatique et Science du Numérique

Langage C++

#include <iostream>

using namespace std;

int main()

{ int nbr, n(1); // declaration

cout << "Quel nombre voulez-vous calculer ? ";

cin >> nbr;

for (int i(2) ; i <= nbr ; i++ ) n = n * i ;

cout << n << endl;

return 0;

}

(12)

Présentation

12

Informatique et Science du Numérique

Python

# saisie nombre premier ou pas...

nbr = input("Quel nombre voulez-vous tester ? ")

# déclaration i = 3

n = (int) sqrt(nbr) + 1 premier = True

if nbr > 2 and nbr % 2 == 0: # test nbr pair premier = False

else:

while premier == True and i < n:

if nbr % i == 0:

premier = False else:

i += 2

# affichage

if premier == True:

print "nombre premier"

else:

print "ce nombre n'est pas premier"

(13)

Présentation

13

Informatique et Science du Numérique

Langage C

#include <stdio.h>

#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 )

premier = 0 ; else

i += 2 ; // affichage if ( premier )

printf("nombre premier");

else

printf("ce nombre n'est pas premier");

return 0;

}

(14)

Présentation

14

Informatique et Science du Numérique

Langage C++

#include <iostream>

#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

const 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 )

premier = false;

else i += 2;

// affichage if ( premier )

cout << "nombre premier" << endl;

else

cout << "ce nombre n'est pas premier" << endl;

return 0;

}

(15)

Présentation

15

Informatique et Science du Numérique

Python

# inversion de texte

text = raw_input("Quelle phrase voulez-vous inverser ?")

# traitement str = ""

for i in range(len(text)):

str += text[len(text) - 1 - i]

print(str)

(16)

Présentation

16

Informatique et Science du Numérique

Langage C

#include <stdio.h>

int main()

{ // declaration

char text[21], str[21];

// inversion de chaine

printf("Quelle phrase voulez-vous inverser ? ");

scanf("%20s", text);

int i = 0;

for (; i < strlen(text); i++)

str[i] = text[strlen(text) - i - 1];

str[i] = 0;

// affichage printf("%s", str);

return 0;

}

(17)

Présentation

17

Informatique et Science du Numérique

Langage C++

#include <iostream>

using namespace std;

int main()

{ // declaration

string text, str = "";

// inversion de chaine

cout << "Quelle phrase voulez-vous inverser ? ";

cin >> text;

// traitement

for (unsigned int i(0); i < text.length(); i++) str += text[text.length() - i - 1];

// affichage

cout << str << endl;

return 0;

}

(18)

Présentation

18

Informatique et Science du Numérique

Coding party++

1. Écrire une fonction qui teste si un nombre est premier

2. Écrire un programme qui indique le nombre total de nombres premiers dans un intervalle [1..n]

3. Modifier le programme ci-dessus pour qu’il indique le temps t de traitement

4. Tracer le graphique t = f(n) pour un algorithme optimisé et

non optimisé

(19)

Présentation

19

Informatique et Science du Numérique

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 else:

if nbr > 2:

premier = False 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)

(20)

Présentation

20

Informatique et Science du Numérique

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 ) premier = 0;

else 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;

}

Références

Documents relatifs

[r]

Entoure en rouge les multiples communs à 10 et 15.. Entoure en vert les multiples communs à 16

A partir du document 2, réaliser le schéma légendé d’une plaquette-test correspondant à un résultat négatif de dosage des anticorps, obtenu pour un patient qui n’est

Solution proposée par Pierre Leteurtre. Sur la suite de nombres entiers A1 , A2 , A3

Indique en dessous De chaque coccinelle le nombre total des points sur les deux ailes.. DECOUVRIR LE MONDE Objectifs  Compléter un tableau à

Mais parmi les nombres plus petits que ab, il n'y en a qu'un qui soit à la fois a-f- a, et b -f-p, un seul à la fois #+&lt;* a et Donc il y aura autant d'entiers inférieurs et

Vous répondrez à toutes les questions pour l’algorithme 1 puis vous referez les questions avec l’algorithme 2 pour finir avec l’algorithme 3.. D’après le tableau

Le nombre de personnes étant trop important et les vitesses moyennes de chacun trop différentes, on décide, pour rendre les sorties plus agréables, de séparer les participants