Bonjour, bienvenue à nouveau.
Dans cette démonstration de conférence Je veux apporter une solution à notre programme météo
dont j'ai parlé à propos de notre défi précédent.
Alors commençons le code les blocs créent un projet.
Je vais nommer ce projet météo.
Et encore une fois, juste un rappel l'application
va nous permettre d'obtenir des totaux annuels et mensuels moyennes des quantités de pluie.
Alors juste en haut, tu veux pour fournir des commentaires vous indiquant ce
qu'est le programme.
Encore une fois, ce programme va être trouver les totaux annuels, la moyenne
annuelle et la moyenne mensuelle sur plusieurs années de données pluviométriques, 5 ans essentiellement.
Alors tout en haut, je vais pour définir quelques constantes, et nous n'avons pas passé en revue
la définition directive préprocesseur en détail encore, mais vous
êtes familier avec ça, ce n'est pas vraiment compliqué.
Alors je vais l'inclure et je veulent écrire du code de bonne qualité.
Alors je vais juste définir celui qui est appelé mois
peut être égal à 12 et une constante.
Vous pouvez également utiliser la constante modificateur, et je vais également en définir un
qui s'appelle années égales à 5.
C'est ce que nous allons jouer.
Et la première chose que nous voulons vraiment à faire dans notre fonction principale est
que nous voulons créer notre tableau qui est un tableau à deux dimensions et nous voulons
initialiser les données.
Nous allons donc initialiser quantités de précipitations, données
de précipitations pour 2010, 2011 et 2015 ou quelque chose comme ça.
Et ainsi nous savons comment créer un tableau bidimensionnel, nous venons
de spécifier le nom du type de données
et Je pense qu'ils devraient être un flotteur parce que les flotteurs ont des points décimaux et les quantités de pluie peuvent être décimales.
Alors on va juste dire flotter, nous allons l'appeler
pluie et ensuite nous préciserons que nous veulent avoir 5 lignes et 12 colonnes.
Alors on va juste dire des années qui est notre constante et mois, puis nous
allons l'initialiser.
Nous l'avons déclaré de cette taille et maintenant nous voulons l'initialiser.
Et vous pouvez l'initialiser en ayant crochets comme ça et vous pouvez ensuite avoir des crochets
entre crochets pour chaque ligne.
On pourrait aussi faire ça tableau constant si nous le
voulions mais nous n'allons pas le faire.
Maintenant j'ai déjà fait ça données et je ne veux
pas taper ce que ce serait.
Ce serait 10 fois 50 ou 12 fois 5, ce serait 60 éléments.
Je ne veux pas saisir 60 éléments maintenant parce
que ça va prendre du temps et tu vas juste s'asseoir là et s'endormir.
Je vais donc copier et collez mon initialisation
et initialisez certaines données.
Ce ne sont que des données factices; ce n'est peut-être pas correct.
Mais tu verras que nous avons des crochets pour chaque ligne et nous avons donc 5 lignes.
Nous séparons chaque rangée par un virgule et nous avons ces accolades à
l'intérieur pour chaque ligne.
Et puis à l'intérieur du bouclé accolades, nous séparons chaque
valeur mensuelle par une virgule.
Nous séparons donc les lignes par des virgules et nous séparons les valeurs
à l'intérieur des lignes par des virgules.
Voici un tas de les quantités de précipitations annuelles.
Donc par exemple cette première ligne représenterait l'année 2011 et la première colonne
serait janvier.
Donc, en janvier 2011, nous avait 4. 3 pouces de pluie.
En bas ici si nous devions regarder 6. 7, ce serait pour l'année 2012, 13.
Pour le mois de mars nous avait 6. 7 pouces de pluie.
Ainsi, vous pouvez voir comment cela représente années et mois pour les précipitations.
Maintenant que nous avons initialisé tous nos données, nous pouvons réellement initialiser ou
créer nos autres variables locales.
Alors nous allons simplement créer un an
et un mois car cela nous aidera à garder nos années droite et nos mois consécutifs.
Alors je dis juste année mois
je suis va les créer sur la même ligne, et je vais également créer un couple flotte sous-total et total.
Le sous-total correspondra aux totaux annuels; le total sera la pluviométrie totale afin que je
puisse obtenir la moyenne annuelle.
Et nous allons également comprendre comment obtenir des moyennes mensuelles.
Alors la première chose dont j'ai besoin
c'est que j'ai besoin d'une boucle for qui imprime notre pluies pendant une année donnée.
Alors d'abord je vais imprimer sur une seule ligne.
Je vais juste imprimer l'année, et je vais ajouter un onglet ...
ajoutez un onglet pour le rendre mieux formaté.
Ajoutons 2 onglets, nous verrons comment cela ressemble une fois que je l'affiche.
Et puis je vais mettre de la pluie, et je vais mettre cela en pouces et je vais ajouter un
saut de ligne.
Et encore une fois, vous voudriez tester ceci pour voir à quoi il ressemble.
Et puis je vais entrer dans ma boucle.
Alors qu'est-ce que je veux faire dans l'ordre pour calculer les sous-totaux
pour chaque année, affichez-les, je veux y aller à travers toutes les lignes, toutes les années, puis pour chaque année,
je Je veux passer tous les mois parce que je dois
additionner les mois.
Donc notre boucle extérieure va commencer avec la première année, qui est 2011, mais c'est
en fait 0 à l'intérieur du tableau car les tableaux sont indexés à 0.
Et je vais également initialiser une autre variable locale à l'intérieur ici.
N'oubliez pas que les boucles for sont très flexibles.
Vous pouvez en fait créer d'autres variables dans l'instruction for.
Je n'ai pas besoin de créer une variable qui est utilisé en dehors
de l'instruction for aux lignes 19 ou 20.
Alors là, je vais juste créer une variable appelée total ou initialiser
ma variable totale.
Et puis je vais continuer jusqu'à mon année est inférieure à mes années qui sont constantes,
et je vais augmenter mon compteur année variable de contrôle de la boucle.
Donc l'année et le mois sont en boucle variables de contrôle sur les lignes 19.
Et cela va représentent ma boucle extérieure.
C'est un tableau bidimensionnel, donc je suis va avoir besoin d'une boucle intérieure aussi.
Et ma boucle intérieure va à parcourir chaque mois.
Alors ici, je vais dire mois est égal à 0, le sous-total pour chaque mois est
également égal à 0 pour l'initialiser.
Et je vais continuer jusqu'à J'en ai fini avec tous mes mois.
Et je vais augmenter ma variable de contrôle de boucle, et ce sera ma
boucle interne.
Donc, dans ma boucle intérieure, je peux en fait déterminer les sous-totaux, je n'ai
rien à afficher.
Donc tout ce que je vais faire dans mon
boucle intérieure est que je vais ajouter à mon sous-total pour chaque année, mon sous-total est mon total annuel.
Et ici je vais juste pour accéder à la baie.
Mon nom de tableau va être pluie.
Donc je peux juste dire pluie sous année, donc ce serait tout pour 2011 initialement
parce que mon extérieur boucle puis pour chaque mois.
Et j'ajoute à cela.
Je dis donc que le sous-total est égal au sous-total plus pluie plus la valeur du tableau.
Alors la boucle intérieure passe à travers tous les mois de cette
année en créent un sous-total.
Maintenant, je veux afficher le sous-total en dehors de la
boucle car je veux seulement afficher le sous-total 5 fois pendant 5 ans.
Alors ici je peux un petit peu Imprimer une déclaration
qui aide à formater un peu les données et aussi aide à l'afficher correctement.
Maintenant, ce sera le année et le sous-total.
Nous voudrons donc probablement ajouter au sous-total, je dirais quelques onglets, mais nous verrons ce que il ressemble à,
donc slash t slash t.
Et puis la seule autre chose nous voulons faire est
que nous voulons ajouter au total parce que nous devons avoir le total pour toutes les années.
Alors ici on peut juste dire le total plus est égal au sous-total.
Et puis vous remarquerez le sous-total est en fait réinitialisé à chaque fois que vous
accédez à la boucle interne, donc nous n'avons pas à reculer.
Et ici nous voulons juste faire sûr que l'indentation est bonne.
Encore une fois, remarquez mon retrait pour chaque bloc, et je n'ai en fait pas besoin
des crochets sur 27 et 29 puisque c'est une seule déclaration mais je vais
les laisser là.
Maintenant que je l'ai fait après imprimé les précipitations annuelles ou les précipitations pour
chaque année, je peux maintenant afficher la moyenne annuelle car j'ai suffisamment de données, j'ai
le total pluie dans chaque mois de pluie.
Alors là, je vais juste afficher la moyenne annuelle qui est juste le
total divisé par les années.
Ajoutez donc une autre déclaration d'impression ici.
Encore une fois, un autre bon endroit pour tester.
Alors allons-y et construisons ceci, assurez-vous que nous n'avons aucune
erreur car il y a beaucoup de code.
Et nous avons un année variable non déclarée.
Lorsque vous voyez une erreur du compilateur, il est parfois déformé
de ce qu'est l'erreur réelle.
Donc, dans ce cas, il m'a dit que j'avais une erreur à la ligne 19, mais
ce qui causait vraiment l'erreur était l'instruction précédente qui n'avait
pas de point-virgule de fin.
Lançons ceci et voyons si nous peut voir les précipitations annuelles, voir
comment elles sont formatées.
Alors on y va l'année 2010 précipitations en pouces.
Nous ajoutons donc probablement trop d'onglets après avoir affiché les sous-totaux, la moyenne annuelle
est de 39. 4.
Donc, nous voulons probablement résoudre ce problème en supprimant simplement un onglet ici.
N'oubliez pas que vous pouvez ajouter un tab dans votre sortie en
utilisant la séquence d'échappement slash t.
Donc, cela semble plutôt bon au moins.
Maintenant, nous devons en avoir un autre boucle qui va
afficher les moyennes mensuelles.
Donc avant d'afficher le mensuel moyennes Je veux tout
imprimer sur une seule ligne.
Alors je vais juste imprimer certaines informations en utilisant printf.
Je vais imprimer mon moyennes mensuelles et ajoutez des flux de
2 lignes pour un meilleur formatage.
Et puis je vais imprimer mes autres informations.
Nous allons juste nous séparer les mois de quelques espaces, puis ajoutez une nouvelle
ligne.
Alors on va faire la même chose lorsque nous parcourons notre boucle for.
Maintenant, nous avons besoin d'une autre boucle for maintenant pour obtenir les moyennes mensuelles.
Donc, dans cette boucle for, l'extérieur boucle va commencer au mois.
Au lieu de passer par chaque rangée, quoi Je vais faire
ici, je vais parcourir chaque colonne parce que J'ai besoin d'obtenir la moyenne mensuelle.
Alors je vais commencer et je suis va
parcourir chaque colonne qui est janvier février Mars représente des colonnes.
Et pour chaque colonne, je vais parcourir toutes
les années pour cette colonne, puis je peux utiliser le sous-total et le total à nouveau des variables.
Alors ici, je vais dire mois égale 0, le mois est inférieur à
mois et le mois plus plus.
Et puis ma boucle intérieure est va traverser les années.
Alors là, je vais juste dire que pour l'année est égal à 0.
Et souviens-toi que je veux aussi pour réinitialiser mon sous-total.
Alors ici, je vais dire sous-total égale 0 parce que
je veux commencer à 0 une fois que j'aurai ma nouvelle année, passer par toutes les années, puis
incrémenter l'année, la variable de contrôle de saut.
Et à l'intérieur ici je veux mettre dans mon sous-total qui va juste être égal à mon tableau
pendant un an et des mois.
Et il est donc important de Comprenez ce qui se passe ici, c'est que nous changeons la façon dont nous
identité à travers le tableau.
Et les premières boucles que nous avons itérées en parcourant chaque ligne et en
regardant chaque colonne.
Dans celui-ci, nous allons réellement à travers chaque
colonne et en regardant cette ligne spécifique parce que nous calculer les moyennes mensuelles.
Nous obtenons donc le sous-total, puis nous Je veux simplement imprimer notre sous-total divisé
par années pour ce mois.
Pour qu'il corresponde à notre sortie à la ligne 37.
Alors on va juste faire quelque chose comme ça, et nous
allons le faire avec 4. 1 format, sous-total divisé par années.
Et nous ajoutons quelques espaces pour qui essaient de l'aligner au mieux,
nous pourrions vouloir ajouter un autre espace.
Et puis après avoir imprimé tout est sorti, nous pouvons simplement ajouter un saut de ligne pour plus
de lisibilité, et nous avons terminé.
Et cela nous donnera le moyennes mensuelles, car nous avons alors obtenu tous les sous-totaux nous
l'avons divisé par années.
Maintenant, construisons ceci, aucune erreur et exécutez-le.
Et maintenant, nous verrons plus production pour les totaux mensuels ou les
moyennes mensuelles.
Donc, ici, nous voyons que chaque mois moyennes et le format ne
s'aligne pas vraiment bien.
Donc tout dépend parce que de la sortie du personnage.
Nous voulons probablement diminuer l'espace, ajoutez seulement un espace là-bas, voyons si cela fait
un meilleur travail.
Maintenant, quand nous l'exécutons, voyons si ça a l'air mieux parce que
vous voulez pouvoir vous lier chaque mois avec le moyennes, c'est un peu mieux.
On se dégage encore un peu parce que les mois sont
3 caractères et les entiers 2.
Nous nous sommes principalement foutus entre octobre et novembre car il n'y a
qu'un seul espace.
Maintenant je peux résoudre ça en juste comme ça.
Alors ça devrait faire le format tout sympa.
Mais tu peux voir comment nous sommes juste impression des quantités de pluie pour
des années et des moyennes mensuelles.
J'espère que cela vous a familiarisé avec tableaux à deux dimensions, comment
les parcourir, comment attribuer tableaux et comment accéder aux données.
Merci.