Lemonade Stand
Starting app for the Chapter 19 project in JavaScript for Kids For Dummies by Chris Minnick and Eva Holland
by Kanatantsin
HTML
<div id="5DayWeather"></div>
<br clear="all">
<div id="orderForm">
<div id="glasses">
<label>How many glasses of lemonade do you want to make this week?
<br />
<input type="number" id="numGlasses" placeholder="hint: think big!" />
</label>
</div>
<div id="price">
<label>How much will you charge for a glass of lemonade this week?
<br />
<input type="number" id="glassPrice" placeholder="more than .5" />
</label>
</div>
<button type="button" id="OpenTheStand">Open The Stand!</button>
</div>
<div id="result"></div>
CSS
#Monday,
#Tuesday,
#Wednesday,
#Thursday,
#Friday {
width: 18%;
height: 200px;
float: left;
border: 1px solid black;
padding: 2px;
font-family: sans-serif;
font-size: 12px;
}
.Sunny {
background-color: skyblue;
}
.Raining {
background-color: lightgrey;
}
.Cloudy {
background-color: #eee;
}
.Thunderstorm {
background-color: #333;
color: #fff;
}
#orderForm {
width: 75%;
margin: 20px auto;
}
#receipt {
background-color: #996600;
color: yellow;
padding: 6px;
}
JavaScript
var days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"];
var weather = ["Sunny", "Partly Sunny", "Partly Cloudy", "Cloudy", "Raining", "Snowing", "Thunderstorm", "Foggy"];
var maxTemp = 100;
var minTemp = 0;
var lemonadeCost = 0.5;
var dailyTemp = [];
/**
Генерация погодных условий для рабочей недели
**/
function generateWeather() {
var weatherToday;
var tempToday;
for (var i = 0; i < days.length; i++) {
weatherToday = weather[Math.floor(Math.random() * weather.length)];
tempToday = Math.floor(Math.random() * (maxTemp - minTemp) + minTemp);
document.getElementById("5DayWeather").innerHTML += "<div id='" + days[i] + "' class='" + weatherToday + "'><b>Forecast for " + days[i] + ":</b><br><br>" + weatherToday + " and " + tempToday + " degrees.</div>";
}
}
generateWeather();
/**
Вычисление объемов продаж
**/
function openTheStand() {
var glassesSold = 0; //ежедневно
var totalGlasses = 0; //за неделю
var glassesLeft = 0; //остаток
//Очистка предыдущих результатов
resetForm();
//Получение данных
var numGlasses = Number(document.getElementById("numGlasses").value);
var glassPrice = Number(document.getElementById("glassPrice").value);
for (var i = 0; i < days.length; i++) {
//Объем продаж в зависимости от температуры и цены
glassesSold = Math.floor(dailyTemp[i] / glassPrice);
//Количество порций непроданного лимонада
glassesLeft = numGlasses - totalGlasses;
//Нельзя продать больше, чем имеется на складе
if (glassesSold > glassesLeft) {
glassesSold = glassesLeft;
}
//Прибавление проданного за день к недельному объему
totalGlasses = glassesSold + totalGlasses;
//Отображение объема продаж за неделю
document.getElementById("result").innerHTML += "<p>" + days[i] + ", you sold " + glassessold + " glasses of lemonade.</p>";
}
displayResults(numGlasses, glassPrice, totalGlasses);
}
function resetForm() {
document.getElemtntById("result").innerHTML =...