М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Sanya3110
Sanya3110
06.10.2022 04:13 •  Информатика

С++ Шаблони функцій.

Завдання 1

Написати шаблони функцій для роботи з одновимірним масивом:
a. введення елементів масиву,
b. виводу елементів масиву на екран,
c. пошуку першого входження елемента у масив(індексу входження, повертати -1, якщо не знайдено)
d. пошуку останнього входження елемента у масив,
e. перемішування елементів масиву випадковим чином(декілька разів поміняти місцями елементи з випадковими індексами)
f. заповнення масиву однаковим заданим значенням
g. впорядкування за зростанням
h. впорядкування за спаданням

Для пошуку першого входження елемента у масиві символів(char[]) написати звичайну функцію (яка перекриє шаблон) таким чином,
щоб ігнорувалася різниця між великими та малими латинськими літерами рядків

Протестувати роботу шаблонних функцій для масивів
цілого,
дробового,
символьного типу(char) та
рядкового(string) типу.

Завдання 2

Написати шаблони функцій для роботи з двовимірним масивом(або тривимірним):
a. введення двовимірного(або тривимірного) масиву
b. виведення масиву на екран
c. знаходження найбільшого елемента масиву
template
T maxInMatrix(T m[][COLS], int rows, int cols)
{
T m = arr[0][0];
…….
return m;
}
або
template
auto maxInMatrix(T m, int rows, int cols)
{
auto m = arr[0][0];
…….
return m;
}
d. перевірка чи заданий рядок матриці впорядкований за зростанням (шаблон функції повертає логічне значення), функція отримує додатково індекс рядка
якщо індекс не коректний повертати хибу
e. перевірка чи всі (кожен) рядки матриці впорядковані за зростанням (шаблон функції повертає логічне значення).

Перевірити роботу шаблонів функцій для матриць числового та рядкового(string) типів.

👇
Открыть все ответы
Ответ:
alya5511Аля
alya5511Аля
06.10.2022
Function P(A:integer):boolean;
Var d,K:integer;
Begin
P:=true;
if A < 2 then P:=false
else
   if A > 3 then
      if A mod 2 = 0 then P:=false
      else
         Begin
         K:=Trunc(Sqrt(A));
         d:=3;
         While d <= K do
            Begin
            if A mod d = 0 then P:=false;
            d:=d+2
            End;
         End;
End;
Var
   A,n:integer;
   S:real;
Begin
S:=0;
Write('n = ');ReadLn(n);
Write('Введите n чисел: ');
For n:= 1 to n do
    Begin
    Read(A);
    if P(A) then S:=S+A;
    End;
Write('S = ',S)
End.
4,4(89 оценок)
Ответ:
Ритаforever
Ритаforever
06.10.2022
#include <iostream>

using namespace std;

int main()
{
    setlocale(LC_ALL, "RUSSIAN");
    const int arr_len=20;
    int arr[arr_len];
    int i = 0;
    srand(8120);
    for (i = 0; i < arr_len; i++)
    {
        arr[i] = rand() % 100;
        cout << arr[i] << ' ';
    }
    cout << endl;
    int min = 100, min_index=arr[0];
    for (i = 0; i < arr_len; i++)
    {
        if (arr[i] < min)
        {
            min = arr[i];
            min_index = i;
        }
    }
    cout << "Минимальный элемент массива: " << min << endl;
    cout << "Его индекс: " << min_index << endl;
    system("pause");
}
4,4(65 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ