Inscription / Connexion Nouveau Sujet
Niveau Licence-pas de math
Partager :

Algorithme

Posté par
Angel06
17-11-18 à 15:40

Bonjour, pouvez-vous m'aider avec cet exercice, s'il vous plaît. Je ne comprends pas cet l'algorithme .
Je vous remercie d'avance.

Exercice:

li=eval(input()) #eval permet de saisir en une seule fois une liste avec tous ses éléments n=int(input())
for i in li:  
         for j in i:  
                 if j==n:      
                      occ=occ+1

print(occ)

Question:
a) Quel est le type de la variable n ? Comment peut-on le déduire ?
b) Quel est le type de la variable j ? Comment peut-on le déduire ?
c) Quel est le type de la variable i ? Comment peut-on le déduire ?
d) Quel est le type de la variable li ? Comment peut-on le déduire ?
e) Quel est le type de la variable occ ? Comment peut-on le déduire ?
f) Expliquer en une ou deux phrases ce que le programme devrait faire en expliquant le rôle des variables li, occ et n. Que doit-on ajouter pour obtenir le résultat souhaité ?
g) Donner un exemple représentatif de valeurs pour li et n et indiquer les valeurs successives prises par les variables i, j et occ.

Posté par
matheuxmatou
re : Algorithme 17-11-18 à 16:12

bonjour

déjà ce n'est pas un algorithme mais un programme écrit en Python !

ensuite n n'est pas défini dans le programme donc ça bugue !

Posté par
alb12
re : Algorithme 17-11-18 à 17:20

il y a des balises pour inserer du code
Pourquoi n'essaies-tu pas d'executer ce programme ?

Posté par
malou Webmaster
re : Algorithme 17-11-18 à 17:31

Algorithme

Posté par
mathafou Moderateur
re : Algorithme 17-11-18 à 19:30

Bonjour,

ces balises ne changent pas grand chose si ce n'est exclusivement que la police utilisée à l'affichage est à çhasse fixe au lieu de proportionnelle comme dans tout le texte "ordinaire" des messages ici.
ça n'apporte donc pas grand chose pour mettre du code Python (ce ne serait pas le cas si le site de l'ile supprimait, comme certains autres sites, les espaces en début de ligne

n n'est pas défini ? moi je lis
n=int(input())
il y a deux input() :
un qui (est réputé) entre(r) une liste li (mais comme aucune vérification ni consigne à l'utilisateur n'est faite sur ce qui est réellement entré ... )
et l'autre qui entre un nombre entier (int) n

Posté par
alb12
re : Algorithme 17-11-18 à 19:43

Angel06 n'est pas assez grande pour trouver ça toute seule ?

Posté par
mathafou Moderateur
re : Algorithme 17-11-18 à 19:46

faut espérer, mais

matheuxmatou

ensuite n n'est pas défini dans le programme donc ça bugue !

Posté par
alb12
re : Algorithme 17-11-18 à 20:39

pour moi le n=int(input()) est dans la ligne de commentaire,
c'est pourquoi je prefere:


li=eval(input())
#eval permet de saisir en une seule fois une liste avec tous ses éléments
n=int(input())
for i in li:
         for j in i:
                 if j==n:
                      occ=occ+1
print(occ)

Posté par
matheuxmatou
re : Algorithme 18-11-18 à 00:52

mathafou

désolé mais le n=int(input... est dans la ligne de commentaire et n'est pas pris en compte dans le programme

Posté par
matheuxmatou
re : Algorithme 18-11-18 à 00:55

alb12
comme ça d'accord !

Posté par
alb12
re : Algorithme 18-11-18 à 08:10

etonnant qu'on ne soit pas oblige d'initialiser occ

Posté par
alb12
re : Algorithme 18-11-18 à 08:19

oups NameError: name 'occ' is not defined

Posté par
mathafou Moderateur
re : Algorithme 18-11-18 à 08:28

encore un exo stupide dont le but est complètement raté et qui se transforme en jeu des sept erreurs ...

Posté par
alb12
re : Algorithme 18-11-18 à 08:34

@Angel06
quand on poste un sujet, il serait bon:
1/ de se relire
2/ d'intervenir de temps en temps
3/ de mettre à jour son profil

Posté par
mathafou Moderateur
re : Algorithme 18-11-18 à 08:57

l'exo est peut être comme ça à la base.
les erreurs étant déja dans l'énoncé d'origine et pas uniquement dans sa recopie ...

l'exo ne consiste déja absolument pas à chercher des erreurs de programmation ni de faire tourner un tel programme sur machine, mais de déterminer en fonction des opérations qui sont faites dessus quel est le type de chaque variable !

de plus qu'il manque des bouts est normal vu que :

Citation :
Que doit-on ajouter...

il faut déja ajouter ici (sur la copie) un retour à la ligne (pour input de n)

Posté par
matheuxmatou
re : Algorithme 18-11-18 à 09:41

oui, je suis d'accord avec toi mathafou
j'avais compris mais je le soulignais car si quelque chose doit être particulièrement rigoureux, c'est bien l'écriture d'un algorithme ou d'un programme !
quant à l'intérêt de cet exercice ...

Posté par
alb12
re : Algorithme 18-11-18 à 09:56

e) Quel est le type de la variable occ ? Comment peut-on le déduire ?
laisse plutot penser à un oubli du posteur

Posté par
mathafou Moderateur
re : Algorithme 18-11-18 à 10:20

ajouter le nombre 1 à une variable indique son type (très) probable ...
ceci dit on ne va pas non plus faire tout l'exo comme ça de commentaire en commentaire dans des discussions entre nous.
vu que le demandeur reste totalement muet dans cette histoire ...

Posté par
alb12
re : Algorithme 18-11-18 à 10:29

"ajouter le nombre 1 à une variable indique son type (très) probable ... "
non puisqu'on obtient un NameError

Posté par
mathafou Moderateur
re : Algorithme 18-11-18 à 10:41


aucun rapport ...
ça c'est la question f !!

Posté par
Angel06
re : Algorithme 18-11-18 à 11:22

Veuillez m'excuser de vous répondre si tard. Je vous remercie pour votre aide et vos conseils  

Posté par
alb12
re : Algorithme 18-11-18 à 11:46

Quels conseils ?
tu pourrais au moins nous dire si l'enonce de depart est exactement ecrit !



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !