% L'opérateur reste sert à voir si ce dernier est divisible par le premier. La condition de i%3 est de déterminer si i est divisible par 3, il n'y a donc que deux résultats : 0 ou 1. Par exemple, 9 ! %3 = 0 10% 3 = 1, opérateur de base, l'auteur peut vérifier plus d'informations, merci
Tout d'abord, regardons la condition de l'instruction while (i % 3). Cela explique à l'étage que % signifie trouver le reste, et i% 3 signifie trouver le reste de i divisé par 3, donc le La signification de la condition while est Le reste après que i divisé par 3 est supérieur à 0. Maintenant nous savons que la valeur de i est 1, donc la condition while est établie, sortie 1, après i++, la valeur de i est 2. À ce moment, la condition while est également satisfaite et la boucle génère 2, Puis i++ À ce moment, la valeur de i est 3 et ne remplit pas la condition. La boucle while n'est pas exécutée et saute. .
Comme l'interrogateur l'a demandé, la condition après while doit être vraie pour exécuter le bloc de code. Si la valeur de i%3 est 0, elle est fausse et le bloc de code suivant ne sera pas exécuté s'il n'est pas 0 (. 1 et 2 ), cela équivaut à true et le bloc de code suivant est exécuté. L'instruction if est également la même. Si l'instruction conditionnelle est 0, elle est fausse et elle n'est pas exécutée si elle n'est pas 0. c'est vrai, et c'est exécuté. J'espère que cela aide!
i%3 n'obtient-il pas le reste ? Par exemple, le résultat de i=3 est 0i=5 Le résultat est 2 et lors d'un jugement conditionnel, il sera automatiquement converti en De type booléen, donc il ne peut pas être divisible par 3 peut être calculé, donc que ce soit 1 ou 2, il peut être saisi, donc cette question devrait être de trouver 找出10以内不能被3整除的数吧?
i%3 Calcul Modulo, il y a trois situations : 0 1 2 Une valeur est jugée vraie ou fausse selon NaN indéfini null 0 "" faux, tous sont faux, et le reste est vrai à ce moment, quand le. le module est 0, il est faux, il n'entrera pas dans le cycle.
% L'opérateur reste sert à voir si ce dernier est divisible par le premier. La condition de i%3 est de déterminer si i est divisible par 3, il n'y a donc que deux résultats : 0 ou 1. Par exemple, 9 ! %3 = 0 10% 3 = 1, opérateur de base, l'auteur peut vérifier plus d'informations, merci
Problèmes historiques, 0 est faux, non-0 est vrai, donc
while(i%3)
est équivalent àwhile(i%3 != 0)
.Tout d'abord, regardons la condition de l'instruction while (i % 3). Cela explique à l'étage que % signifie trouver le reste, et i% 3 signifie trouver le reste de i divisé par 3, donc le La signification de la condition while est Le reste après que i divisé par 3 est supérieur à 0.
Maintenant nous savons que la valeur de i est 1, donc la condition while est établie, sortie 1, après i++, la valeur de i est 2. À ce moment, la condition while est également satisfaite et la boucle génère 2,
Puis i++ À ce moment, la valeur de i est 3 et ne remplit pas la condition. La boucle while n'est pas exécutée et saute. .
Comme l'interrogateur l'a demandé, la condition après while doit être vraie pour exécuter le bloc de code. Si la valeur de i%3 est 0, elle est fausse et le bloc de code suivant ne sera pas exécuté s'il n'est pas 0 (. 1 et 2 ), cela équivaut à true et le bloc de code suivant est exécuté. L'instruction if est également la même. Si l'instruction conditionnelle est 0, elle est fausse et elle n'est pas exécutée si elle n'est pas 0. c'est vrai, et c'est exécuté. J'espère que cela aide!
Le résultat de
i%3
n'obtient-il pas le reste ? Par exemple, le résultat dei=3
est0
i=5
Le résultat est2
et lors d'un jugement conditionnel, il sera automatiquement converti en De type booléen, donc il ne peut pas être divisible par 3 peut être calculé, donc que ce soit 1 ou 2, il peut être saisi, donc cette question devrait être de trouver找出10以内不能被3整除的数吧?
Simple
while(i%3)
signifie sauter la boucle lorsque i est divisible par 3.équivaut à
.i % 3
en python est une opération de division modulaire (modulo) Pour les opérandes entiersa
,b
satisfaita / b * b + a % b == a
a
si et seulement sib
divisea % b == 0
uniformément.La condition de terminaison de la boucle est donc
i
divisible3
signifie que la boucle s'arrête lorsque je peux être divisé par 3. 0 est faux et non-0 est vrai. Lorsque i%3==0, il n'y a pas de boucle.
i%3 Calcul Modulo, il y a trois situations : 0 1 2 Une valeur est jugée vraie ou fausse selon NaN indéfini null 0 "" faux, tous sont faux, et le reste est vrai à ce moment, quand le. le module est 0, il est faux, il n'entrera pas dans le cycle.
Quand je boucle jusqu'à ce qu'il soit divisible par 3, sors de la boucle