PascalABC.NET 3.3.5, сборка 1650 от 01.04.2018 Внимание! Если программа не работает, обновите версию!
type tQ=queue<integer>;
procedure ЗаполнениеОчереди(q:tQ; n:integer); begin Randomize; loop n do begin var k:=Random(-20,40); q.Enqueue(k) end; end;
procedure СуммаНужныхЭлементов(q:tQ; var s:integer); begin var ko,k:integer; for var i:=1 to q.Count do begin k:=q.Dequeue; q.Enqueue(k); if k.IsOdd then ko:=k; if i=3 then s:=k end; s+=ko end;
procedure УдалитьЭлемент(q:tQ; p:integer); begin for var i:=1 to q.Count do begin var k:=q.Dequeue; if i<>p then q.Enqueue(k) end end;
begin var MyQ:=new tQ; var n:=ReadInteger('Кол-во элементов (не менее 4):'); ЗаполнениеОчереди(MyQ,n); MyQ.Println; var s:integer; СуммаНужныхЭлементов(MyQ,s); MyQ.Enqueue(s); // искомая сумма помещена в очередь MyQ.Println; УдалитьЭлемент(MyQ,4); MyQ.Println end.
Внимание! Если программа не работает, обновите версию!
type
tQ=queue<integer>;
procedure ЗаполнениеОчереди(q:tQ; n:integer);
begin
Randomize;
loop n do begin
var k:=Random(-20,40);
q.Enqueue(k)
end;
end;
procedure СуммаНужныхЭлементов(q:tQ; var s:integer);
begin
var ko,k:integer;
for var i:=1 to q.Count do begin
k:=q.Dequeue; q.Enqueue(k);
if k.IsOdd then ko:=k;
if i=3 then s:=k
end;
s+=ko
end;
procedure УдалитьЭлемент(q:tQ; p:integer);
begin
for var i:=1 to q.Count do begin
var k:=q.Dequeue;
if i<>p then q.Enqueue(k)
end
end;
begin
var MyQ:=new tQ;
var n:=ReadInteger('Кол-во элементов (не менее 4):');
ЗаполнениеОчереди(MyQ,n);
MyQ.Println;
var s:integer;
СуммаНужныхЭлементов(MyQ,s);
MyQ.Enqueue(s); // искомая сумма помещена в очередь
MyQ.Println;
УдалитьЭлемент(MyQ,4);
MyQ.Println
end.
Пример
Кол-во элементов (не менее 4): 13
-7 12 -18 4 23 -1 15 -11 9 12 5 3 2
-7 12 -18 4 23 -1 15 -11 9 12 5 3 2 -15
-7 12 -18 23 -1 15 -11 9 12 5 3 2 -15
#include < cmath >
using namespace std;
int main() {
float c, s, v, h, r;
int m;
cout << "Выберите цифру, где: 1 - длина окружности, 2 - площадь круга, 3 - объем цилиндра." << endl;
cin >> m;
switch (m){
case (1):{
cout << "Введите радиус: " << endl;
cin >> r;
cout << "Длина окружности равна: " << 2*M_PI*r << endl;
break;
}
case (2):{
cout << "Введите радиус: " << endl;
cin >> r;
cout << "Площадь круга равна: " << M_PI * pow (r,2) << endl;
break;
}
case (3): {
cout << "Введите радиус и высоту: " << endl;
cin >> r >> h;
cout << "Объем цилиндра равен: " << M_PI * pow (r,2 ) * h << endl;
break;
}
default:
cout << "Некорректный ввод." << endl;
}
return 0;
}