Дан алгоритм на языке грис: шаг шаг поворот поворот поворот шаг шаг прыжок прыжок прыжок шаг шаг поворот поворот поворот шаг шаг прыжок прыжок прыжок шаг шаг поворот поворот поворот шаг шаг прыжок прыжок прыжок шаг шаг поворот поворот поворот шаг шаг прыжок прыжок прыжок
запишите этото же алгоритм с использованием подпрограмм.
bool ok1(int a, int b, int c){
return (a+b > c && a+c > b && b+c > a) && min(a,min(b,c)) > 0;
}
bool ok2(int a, int b, int c){
return ok1(a,b,c) && (a == b || a == c || b == c);
}
signed main(){
const int n = 3, m = 7;
int arr[n][m];
for(int i = 0; i < n; i++)
for(int j = 0; j < m; j++)
cin >> arr[i][j];
vector<int> ans;
for(int j = 0; j < m; j++)
if(ok2(arr[0][j],arr[1][j],arr[2][j]))
ans.push_back(j+1);
cout << ans.size() << "\n";
for(auto i: ans)
cout << i << " ";
}
Подробнее - на -
Объяснение:
на Free Pascal
Объяснение:
var
a : integer;
n, i, big, nc, ncount : integer;
begin
writeln('Введите количество чисел :');
readln(n);
big := 0;
nc := 0;
ncount := 0;
for i := 1 to n do begin
writeln('Введите ', i, ' число:');
readln(a);
if a>20 then
big := big + a;
if (a mod 2) <> 0 then begin
nc := nc + a;
inc(ncount);
end;
end;
writeln('Сумма чисел > 20 = ', big);
writeln('Среднее арифметическое ',ncount,' нечётных чисел =', nc/ncount:2:2);
end.