Heim >Web-Frontend >js-Tutorial >Lustige JavaScript-Frage: Wasserkrise

Lustige JavaScript-Frage: Wasserkrise

黄舟
黄舟Original
2017-02-15 14:23:571330Durchsuche

Liebe Bewohner:

Ich bin der Dorfvorsteher und möchte Ihnen einige schlechte Nachrichten überbringen. Das Dorf ist in letzter Zeit mit einem Wassermangelproblem konfrontiert.

Hier ist eine Liste mit den Altersangaben der Dorfbewohner.

Verschiedene Altersgruppen haben einen unterschiedlichen täglichen Wasserverbrauch: 18 und jünger sind etwa 1 Liter pro Tag, 18 bis 50 Liter unter Jahren sind 2 Liter pro Tag, jene 50 Jahre und älter sind 1,5 Liter.

Jetzt beträgt der Wasservorrat des Dorfes N Liter. Um Probleme zu verhindern, bevor sie auftreten, bitten wir alle um Hilfe.

Wie lange können wir es bei der aktuellen Konsumrate durchhalten?

Hier kommt die Aufgabe:

Schreiben Sie eine Funktion, die 2 Parameter empfängt. Der erste stellt den Reservebetrag Ns Wasser, und das zweite ist ageOfDwellerArray, das eine Liste von Altersgruppen darstellt.

Gibt eine positive Ganzzahl zurück, die die Anzahl der Tage darstellt, und gibt

-1 zurück, wenn es keine Bewohner im Dorf gibt (ageOfDwellerArray ist leer).

Idee:

Nehmen Sie zunächst nach den Worten des Dorfvorstehers die Aufteilung vor und unterteilen Sie sie in drei Ebenen: Minderjährige, Erwachsene und Ältere .


var info = {
  child : {consume : 1,range : [0,18]},
  adult : {consume : 2,range : [18,50]},
  old : {consume : 1.5,range : [50,200]},
};
Berechnen Sie dann basierend auf der Altersliste und dem Konfigurationsobjekt oben den gesamten Tagesverbrauch.

Dividieren Sie abschließend die Gesamtreserve durch den täglichen Verbrauch, um die Anzahl der Erhaltungstage zu berechnen.


function thirstyIn(water, ageOfDwellerArray) {
  var consumePerDay = 0;
  for(var i=0;i<ageOfDwellerArray.length;i++){
    for(var j in info){
      var type = info[j];
      var range = type.range;
      if(ageOfDwellerArray[i] >= range[0] && ageOfDwellerArray[i] < range[1]){
        consumePerDay += type.consume;
        break;
      }
    }
  }
  return consumePerDay ? Math.floor(water / consumePerDay) : -1;
}

Das Obige ist der Inhalt der JavaScript-interessanten Frage: Wasserknappheitskrise. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www .php.cn)!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Magische DrehfunktionNächster Artikel:Magische Drehfunktion