{/*Написать логическое выражение для определения стоимости переговоров, если стоимость переговоров с 22 часов до 8 часов на 20% ниже, а в субботу и в воскресенье дополнительно предоставляется скидка 10%. */}
t = +prompt('время разговоров от 0 до 24 часов')
dt = +prompt('продолжительность разговора в минутах')
s = +prompt('стоимость минуты разговора')
d = +prompt('день недели от 1 до 7')
console.log('t=',t,'dt=', dt, 's=', s, 'd=', d)
function Price (t, dt, d, s) {
let startTalk = t*60
let price = 0
console.log('day = ', d)
for (let i =1; i<=dt; i++){
let night = false
let holiday = false
let p = s
if( (startTalk+i)%1440 === 0 ){
if (d<7){
d=d+1
console.log('day = ', d)
} else {
d=1
console.log('day = ', d)
}
}
if ( (startTalk+i)%1440>=1320 || (startTalk+i)%1440<480){
// PascalABC.NET 3.0, сборка 1128 procedure Convert(V:array of integer); begin for var i:=0 to V.Length-1 do if V[i]>9 then V[i]:=9 else if V[i]<5 then V[i]:=5 end;
procedure Develop(c:char; k:integer); begin WritelnFormat('*** Массив {0} ***',c); var a:=ArrRandom(k,-5,15); Write('исходный : '); a.PrintLn(','); Convert(a); Write('результат: '); a.PrintLn(','); end;
begin var m:=ReadInteger('Количество элементов в массиве A:'); var n:=ReadInteger('Количество элементов в массиве B:'); Develop('A',m); Develop('B',n) end.
Тестовое решение: Количество элементов в массиве A: 15 Количество элементов в массиве B: 10 *** Массив A *** исходный : 6,5,-5,9,1,0,-3,9,13,12,-4,8,11,14,-5 результат: 6,5,5,9,5,5,5,9,9,9,5,8,9,9,5 *** Массив B *** исходный : 5,12,12,4,7,9,7,-3,-1,-2 результат: 5,9,9,5,7,9,7,5,5,5
Відповідь:
Дивись фото
Пояснення:
<!DOCTYPE html>
<html>
<head>
<title>Price</title>
<meta charset="utf-8">
</head>
<body>
<p>стоимости переговоров</p>
</body>
<script>
{/*Написать логическое выражение для определения стоимости переговоров, если стоимость переговоров с 22 часов до 8 часов на 20% ниже, а в субботу и в воскресенье дополнительно предоставляется скидка 10%. */}
t = +prompt('время разговоров от 0 до 24 часов')
dt = +prompt('продолжительность разговора в минутах')
s = +prompt('стоимость минуты разговора')
d = +prompt('день недели от 1 до 7')
console.log('t=',t,'dt=', dt, 's=', s, 'd=', d)
function Price (t, dt, d, s) {
let startTalk = t*60
let price = 0
console.log('day = ', d)
for (let i =1; i<=dt; i++){
let night = false
let holiday = false
let p = s
if( (startTalk+i)%1440 === 0 ){
if (d<7){
d=d+1
console.log('day = ', d)
} else {
d=1
console.log('day = ', d)
}
}
if ( (startTalk+i)%1440>=1320 || (startTalk+i)%1440<480){
night = true
}
if ( d === 6 || d===7){
holiday = true
}
if (night){
p = p - s*0.2
}
if (holiday){
p = p-s*0.1
}
price = price+p
console.log('стоимости '+ i+'мин. = '+ p.toFixed(2)+'$')
}
console.log('fin.price', price.toFixed(2), '$')
return price.toFixed(2)
}
{/*Price(t, dt, d, s)*/}
alert('стоимости переговоров ' + '$' + Price(t, dt, d, s))
</script>
</html>
procedure Convert(V:array of integer);
begin
for var i:=0 to V.Length-1 do
if V[i]>9 then V[i]:=9
else
if V[i]<5 then V[i]:=5
end;
procedure Develop(c:char; k:integer);
begin
WritelnFormat('*** Массив {0} ***',c);
var a:=ArrRandom(k,-5,15);
Write('исходный : '); a.PrintLn(',');
Convert(a);
Write('результат: '); a.PrintLn(',');
end;
begin
var m:=ReadInteger('Количество элементов в массиве A:');
var n:=ReadInteger('Количество элементов в массиве B:');
Develop('A',m);
Develop('B',n)
end.
Тестовое решение:
Количество элементов в массиве A: 15
Количество элементов в массиве B: 10
*** Массив A ***
исходный : 6,5,-5,9,1,0,-3,9,13,12,-4,8,11,14,-5
результат: 6,5,5,9,5,5,5,9,9,9,5,8,9,9,5
*** Массив B ***
исходный : 5,12,12,4,7,9,7,-3,-1,-2
результат: 5,9,9,5,7,9,7,5,5,5