Bonjour à tous j'ai un petit problème un niveau d'une boucle. Dans ce code avant que je remplace money par barn[] ça marchait très bien mais depuis la boucle ne s'arrête pas. Même en faisant un copié collé du cours le problème est le même. Comment puis-je faire ? Merci.
var barn = [0, 0, 0]
var money: Double = 0.0
var numberOfDay: Int = 0
let price: Double = 1499.0
while money < price {
// Joe nourrit les vaches tous les jours
money -= 4
if numberOfDay % 30 == 1 {
// Joe moissonne
barn[1] += 100
} else if numberOfDay % 30 == 10 || numberOfDay % 30 == 20 {
// Joe tond les moutons
barn[2] += 30
} else {
// Joe trait les vaches
barn[0] += 30
}
// On passe au jour suivant
numberOfDay += 1
}
Hello, suite à l'intro de Swift, je poursuis avec ce cours et j'ai une petite question.
Quand j'ouvre le playground de mon côté et que je tape du code, j'ai pas la réponse instantané je suis obligé de cliquer sur le petit bouton lecture à gauche comme ci dessous pour que ça s'affiche à droite.
J'ai du mal à comprendre une chose, vers la moitié du cours, on "code la grange de Joe"
// On calcul la taille de la grange
var barnSize = 0
for goods in barn {
barnSize += goods
}
On utilise cette boucle for pour compter le nombre d'éléments dans la grange. Je ne comprend pas du tout comment ça fonctionne !
Je m'attendais à additionner chacun des index du tableau "barn" et mettre ce total dans une variable barnSize, et la je ne comprend absolument pas ce que fait le code,
quelqu'un saurait m'expliquer ?
merci par avance
[EDIT] J'ai trouvé ! j'avais déjà zappé le moyen de parcourir un tableau avec une boucle for ... donc on parcoure le tableau barn avec "goods", à chaque index parcouru "goods" prend la valeur et on l'ajoute à barnSize
Je pense que t’apprendras jamais reduce dans ce tutoriel.. en gros ça boucle sur le tableau en faisant une addition en partant de 0. Assez simple. BarnSize est une variable car tu la modifiés dans ta boucle. Si t’as une methode qui te retourne directement le résultat tu n’as pas besoin de l’avoir en variable. En fonction du besoin tu pourrais aussi faire une propriété calculee. Tout ca pour dire qu’il n’y a pas de vérité absolue, ça dépend de ce que tu cherches à faire. J’imagine que le but de cette partie c’est de montrer comment parcourir un tableau. Donc ils font une boucle qui ne sert à rien pour illustrer ça. C’est le probleme de ce cours : ne pas utiliser la meilleure méthode pour résoudre un problème mais uniquement la méthode qu’ils souhaitent illustrer. Garde l’esprit ouvert ! C’est pas une parole d’evangile
Je pense que t’apprendras jamais reduce dans ce tutoriel.. en gros ça boucle sur le tableau en faisant une addition en partant de 0. Assez simple. BarnSize est une variable car tu la modifiés dans ta boucle. Si t’as une methode qui te retourne directement le résultat tu n’as pas besoin de l’avoir en variable. En fonction du besoin tu pourrais aussi faire une propriété calculee. Tout ca pour dire qu’il n’y a pas de vérité absolue, ça dépend de ce que tu cherches à faire. J’imagine que le but de cette partie c’est de montrer comment parcourir un tableau. Donc ils font une boucle qui ne sert à rien pour illustrer ça. C’est le probleme de ce cours : ne pas utiliser la meilleure méthode pour résoudre un problème mais uniquement la méthode qu’ils souhaitent illustrer. Garde l’esprit ouvert ! C’est pas une parole d’evangile
Je ne compte pas m'arrêter à ce tuto
Ok je comprend pour la constante, d'ailleurs une constante prend moins de place en mémoire qu'une variable ?
Yes. Une constante à besoin de X mémoires à un instant T et ça ne changera jamais. L’allocation de mémoire est donc optimisé.
Je suis sur mobile donc pas de formatage de code désolé :
class X { var barnSize : Int { barn.reduce(0. +) } }
A chaque fois que tu vas demander barnSize le reduce sera à nouveau exécuté. On parle de computed properties car la variable n’a pas de valeur. Elle est systematiquement recalculee.
Je souhaite commencer ce cours après avoir fait l'introduction recommandée, mais un petit obstacle se met en travers de ma route. Il semblerait que sur la dernière version de Xcode, l'option Playground n'est plus proposée à l'ouverture. Dans l'app store je trouve cependant un Swift Playground, est-ce que je peux suivre le cours avec ce dernier ? Est-ce que j'ai loupé quelque chose ?
Autant que je sache, on ne peut pas programmer directement sur un mobile. Il faut coder sur un Mac ou un iPad à la rigueur. On m'a dit que Apple demande des droits pour installer une application, même sur ton mobile. Si ça va, il y a quelques cours / tutoriels sur swift sur ce site et d'autres ailleurs. Fais une recherche.
Le Tout est souvent plus grand que la somme de ses parties.
Voilà quelques jours que j'ai commencé le cours sur les fondamentaux de Swift, et je rencontre un petit problème depuis hier : Je ne peux plus lancer les exercices proposés directement sur le site OpenClassroom via les consoles intégrées, ces dernières n'affichant plus qu'un écran blanc. Cela à commencé à partir de la leçon "Créez vos premières fonctions", néanmoins, en essayant de revenir en arrière sur les exercices précédemment réalisés, je me suis rendu compte qu'eux aussi étaient devenus inaccessibles...
Je suis sur le navigateur safari, j'ai alors essayé de télécharger google chrome pour voir si le problème venait du navigateur, mais il semblerait que ce ne soit pas le cas car je rencontre le même soucis sur chrome.
Quelqu'un aurait il une solution à me proposer pour résoudre ce problème ?
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Le Tout est souvent plus grand que la somme de ses parties.
<audio class="audio-for-speech" />