Bonjour,
voici le problème: on écrit à la suite tous les nombres de 1 à 200 000 et on cherche à savoir combien de fois apparaît le nombre 2015.
J'ai dénombré 40 occurrences:2015----->1 fois
2015u , ---->10 fois
1d2015 ,--->10 fois
e2015,--->9 fois
12015f,--->10fois
1)La réponse est-elle juste?
2)Connaissez-vous un programme Xcas qui pourrait répondre à la question, par exemple qui écrirait une suite de caractères(des valeurs) et qui dénombrerait le nombre d'apparitions de 2015?Merci.
salut
avec vba j'obtiens 162
Sub exo()
'on écrit à la suite tous les nombres de 1 à 200 000 et on cherche à savoir combien de fois apparaît le nombre 2015.
For i = 1 To 200000
Z = Z & i
Next
For j = 1 To Len(Z)
If Mid(Z, j, 4) = "2015" Then
n = n + 1
End If
Next
msgbox n'-->retourne 162
End Sub
merci,ma réponse était vraiment incomplète.
le 4 dans la commande Mid(Z,j,4) siginifie-t-il les nombres à 4 chiffres?Et que renvoie n?
Xcas ou python n'est-ce pas à peu de choses près identique?Dans ce cas python alors.
salut Mid(Z,j,4) recupere une chaine à 4 "chiffres" en prenant comme point de depart le rang j de la chaine de caracteres
j'ai fais ca sur excel vba , mais tu peux le faire sur visual basic , python , c++ , et pleins d'autres encor il te faut juste la connaisance d'au moins un language
Bonjour,
Dans ton premier post, tu dénombres les cas où 2015 apparaît directement dans le nombre, il faut aussi dénombrer les cas où le 2015 est à cheval entre deux nombres
par exemple 1520_1521.
avec Xcas
fonction Nombre()
var k,N;
N:=string(1);
pour k de 2 jusque 200000 faire
N:=N+k // N est en string !
fpour
retourne revlist(convertir(expr(N),base,10)) // liste des chiffres [1,2,3,4,5,6,7,8,9,1,0,1,1,..]
ffonction:;
fonction Recherche()
var k,cpt,L;
L:=Nombre();
cpt:=0;
pour k de 0 jusque size(L)-4 faire
si mid(L,k,4)==[2,0,1,5] alors // parcours de la liste par tranches de 4 chiffres
cpt:=cpt+1
fsi
fpour
retourne cpt
ffonction:;
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :