Πέμπτη 14 Φεβρουαρίου 2019

Δομή επανάληψης for στη javascript

Υπάρχει περίπτωση να χρειάζεται να εκτελείτε πολλές φορές μία ομάδα εντολών.
Τη λύση μας τη δίνει η δομή επανάληψης.
Ας υποθέσουμε ότι θέλουμε να εμφανίσουμε τους αριθμούς από 1 ως 7.
Δεν είναι σωστό να γράψουμε πολλές φορές την ίδια εντολή.
Αντίθετα, γράφουμε:

<html>
<body>


<p id="demo"></p>

<script>
var text = "";
var i;
for (i = 1; i <= 7; i++) {
  text += "The number is " + i + "<br>";
}
document.getElementById("demo").innerHTML = text;
</script>

</body>
</html>

Παρατηρούμε ότι η μεταβλητή i παίρνει αρχικά την τιμή 1 και ύστερα ελέγχεται αν είναι μικρότερη ή ίση του 7. Αν είναι, εκτελούνται οι εντολές (βρόχος-loop) και το i αυξάνει κατά ένα (i++ ).

 O  τρόπος που βγάζει μηνύματα η javascript θα έσβηνε κάθε φορά το προηγούμενο μήνυμα. Γι αυτό βάζει:  text += "The number is " + i + "<br>";
Αυτό είναι ισοδύναμο με :
text=text+ "The number is " + i + "<br>";
Δηλαδή, η νέα τιμή της μεταβλητής text θα είναι η προηγούμενη συν αυτή που μόλις υπολογίστηκε.
Έτσι, διατηρούνται όλες οι προηγούμενες!
Το ίδιο θα συμβεί και με το άθροισμα.

 Άθροισμα

Το άθροισμα πολλών αριθμών γίνεται με τη βοήθεια της δομής επανάληψης.
Η ιδέα είναι ότι η νέα τιμή ισούται με την παλιά που είχε η μεταβλητή συν την καινούρια.

Δημιουργούμε μία μεταβλητή, κ (αθροιστής)  και της δίνουμε αρχική τιμή μηδέν.
μετά, μέσα σε ένα for  προσθέτουμε τη νέα τιμή στο κ:
Έτσι, αν θέλουμε να βρούμε το άθροισμα των αριθμών από 1 ως 10 γράφουμε:

<script>
var k= 0;
var i;
for (i = 1; i <= 10; i++) {
  k+=   i;
}
document.getElementById("demo").innerHTML = k;
</script>


 Πλήθος

 Για να βρεθεί το πλήθος, μηδενίζουμε πάλι τον αθροιστή κ και κάθε φορά προσθέτουμε το ένα.

Για παράδειγμα, αν θέλουμε να βρούμε το πλήθος των αριθμών από 1 ως 10 που είναι μεγαλύτεροι του 3, γράφουμε:


<script>

var k=0;
var i;

for (i = 1; i <= 10; i++) {

if (i>3) {
  k+=  1;
}
}

document.getElementById("demo").innerHTML = k;

</script>

Γινόμενο

Προφανώς στο γινόμενο το p θα είναι 1 και θα ισχύει p*=i
Έστω ότι θέλουμε να βρούμε το ν παραραγοντικό:
ν!= 1*2*3*4...*ν

<script>
var p= 1;
var i;
for (i = 1; i <= 10; i++) {
  p*=   i;
}
document.getElementById("demo").innerHTML = p;
</script>

Ασκήσεις

1. Να βρεθεί το άθροισμα των αριθμών από 0 ως 100 που είναι άρτιοι.
2. Να βρεθεί το πλήθος των αριθμών από 1 ως 50 που είναι πολλαπλάσια του 3.
3. Να βρεθεί το γινόμενο των αριθμών από 1 ως 20  που είναι περιττοί.
4. Να παρουσιάζονται οι αριθμοί από 1 ως 7 και δίπλα  η αντίστοιχη ημέρα της εβδομάδας. 1-Δευτέρα, 2- Τρίτη, κ.ο.κ.
5.  Να βρεθεί το άθροισμα:
6. Να βρεθεί το αποτέλεσμα: Σ=1-2+3-4+5-6+7-8+...-50 
7. Κάντε να εμφανίζονται οι αριθμοί 5,10,15,20,...,100

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου

Σημείωση: Μόνο ένα μέλος αυτού του ιστολογίου μπορεί να αναρτήσει σχόλιο.