Вопрос задан 09.12.2023 в 09:15. Предмет Информатика. Спрашивает Гагарин Васик.

Скласти блок-схеми розв’язку задач обробки одновимірних та двовимірних масивів та програму на мові

С++ Задано одновимірний масив(и). Заповнити масив(и) випадковим чином. Вивести елементи масиву на екран, виконати необхідну обробку масиву та вивести результат перетворень Знайти косинус кута між двома векторами (прийняти за вектор масив з 10 елементів).
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Логинов Даниил.

#include <iostream>

#include <cmath>

#include <cstdlib>

#include <ctime>

const int SIZE = 10;

void fill(int a[], int s) { for (int i = 0; i < s; i++) a[i] = rand() % 100; }

void print(int a[], int s) { for (int i = 0; i < s; i++) std::cout << a[i] << " "; std::cout << std::endl; }

double cosAngle(int a[], int b[], int s) { double d = 0, nA = 0, nB = 0; for (int i = 0; i < s; i++) { d += a[i] * b[i]; nA += a[i] * a[i]; nB += b[i] * b[i]; } return d / (sqrt(nA) * sqrt(nB)); }

int main() {

   srand(time(NULL));

   int v1[SIZE], v2[SIZE];

   fill(v1, SIZE); fill(v2, SIZE);

   std::cout << "Первый вектор: "; print(v1, SIZE);

   std::cout << "Второй вектор: "; print(v2, SIZE);

   std::cout << "Косинус угла между векторами: " << cosAngle(v1, v2, SIZE) << std::endl;

   return 0;

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Розв'язок задачі обробки одновимірного масиву

Для початку, давайте розглянемо розв'язок задачі обробки одновимірного масиву.

1. Створення та заповнення масиву випадковими числами: - Створимо одновимірний масив з 10 елементів. - Заповнимо масив випадковими числами.

```c #include #include #include

int main() { int array[10]; int i;

// Ініціалізуємо генератор випадкових чисел srand(time(NULL));

// Заповнюємо масив випадковими числами for (i = 0; i < 10; i++) { array[i] = rand() % 100; // Генеруємо випадкове число від 0 до 99 }

// Виводимо елементи масиву на екран printf("Елементи масиву: "); for (i = 0; i < 10; i++) { printf("%d ", array[i]); }

return 0; } ```

Примітка: У коді використовується функція `rand()` для генерації випадкових чисел. Щоб отримати різні послідовності випадкових чисел при кожному запуску програми, використовується функція `srand(time(NULL))`, яка ініціалізує генератор випадкових чисел на основі поточного часу.

2. Обробка масиву та виведення результату: - Виконаємо необхідну обробку масиву (наприклад, знайдемо суму всіх елементів). - Виведемо результат обробки на екран.

```c #include #include #include

int main() { int array[10]; int i, sum = 0;

// Ініціалізуємо генератор випадкових чисел srand(time(NULL));

// Заповнюємо масив випадковими числами for (i = 0; i < 10; i++) { array[i] = rand() % 100; // Генеруємо випадкове число від 0 до 99 }

// Виводимо елементи масиву на екран printf("Елементи масиву: "); for (i = 0; i < 10; i++) { printf("%d ", array[i]); }

// Обробка масиву (наприклад, знаходження суми елементів) for (i = 0; i < 10; i++) { sum += array[i]; }

// Виведення результату обробки printf("\nСума елементів масиву: %d\n", sum);

return 0; } ```

У цьому прикладі ми обчислюємо суму всіх елементів масиву. Ви можете змінити обробку масиву залежно від вашої потреби.

Розв'язок задачі обробки двовимірного масиву

Тепер розглянемо розв'язок задачі обробки двовимірного масиву.

1. Створення та заповнення двовимірного масиву випадковими числами: - Створимо двовимірний масив розміром 5x5. - Заповнимо масив випадковими числами.

```c #include #include #include

int main() { int array[5][5]; int i, j;

// Ініціалізуємо генератор випадкових чисел srand(time(NULL));

// Заповнюємо масив випадковими числами for (i = 0; i < 5; i++) { for (j = 0; j < 5; j++) { array[i][j] = rand() % 100; // Генеруємо випадкове число від 0 до 99 } }

// Виводимо елементи масиву на екран printf("Елементи масиву:\n"); for (i = 0; i < 5; i++) { for (j = 0; j < 5; j++) { printf("%d ", array[i][j]); } printf("\n"); }

return 0; } ```

2. Обробка масиву та виведення результату: - Виконаємо необхідну обробку масиву (наприклад, знайдемо суму всіх елементів). - Виведемо результат обробки на екран.

```c #include #include #include

int main() { int array[5][5]; int i, j, sum = 0;

// Ініціалізуємо генератор випадкових чисел srand(time(NULL));

// Заповнюємо масив випадковими числами for (i = 0; i < 5; i++) { for (j = 0; j < 5; j++) { array[i][j] = rand() % 100; // Генеруємо випадкове число від 0 до 99 } }

// Виводимо елементи масиву на екран printf("Елементи масиву:\n"); for (i = 0; i < 5; i++) { for (j = 0; j < 5; j++) { printf("%d ", array[i][j]); } printf("\n"); }

// Обробка масиву (наприклад, знаходження суми елементів) for (i = 0; i < 5; i++) { for (j = 0; j < 5; j++) { sum += array[i][j]; } }

// Виведення результату обробки printf("\nСума елементів масиву: %d\n", sum);

return 0; } ```

У цьому прикладі ми обчислюємо суму всіх елементів двовимірного масиву. Ви можете змінити обробку масиву залежно від вашої потреби.

Знаходження косинуса кута між двома векторами

Щоб знайти косинус кута між двома векторами, можна скористатися формулою:

cos(θ) = (A · B) / (||A|| * ||B||)

де A та B - вектори, · - скалярний добуток, ||A|| та ||B|| - довжини векторів A та B.

1

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос