Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
Lizardomsk
0 / 0 / 0
Регистрация: 20.02.2012
Сообщений: 22
#1

Даны два одномерных массива А и B. Найти их скалярное произведение. - C++

02.03.2012, 16:39. Просмотров 1706. Ответов 5
Метки нет (Все метки)

Даны два одномерных массива А и B. Найти их скалярное произведение.через С++ если можно к строчкам коментарии написать.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2012, 16:39     Даны два одномерных массива А и B. Найти их скалярное произведение.
Посмотрите здесь:

Даны два одномерных массива разной размерности. найти элементы принадлежащие и тому и другому массиву - C++
Помогите пожалуйста! Даны два одномерных массива разной размерности. найти элементы принадлежащие и тому и другому массиву. (на языке...

Даны векторы AN={ ai }i=1,N и BN={ bi }i=1,N . Найти их скалярное произведение по формуле: - C++
Помогите пожалуйста с задачей: Даны векторы AN={ ai }i=1,N и BN={ bi }i=1,N . Найти их скалярное произведение по формуле:

Даны 2 матрицы. Проверить условие. Найти скалярное произведение. - C++
Доброго времени суток. Прошу помощи в написании программы. Задача: Даны 2 матрицы. Для каждой проверить условие: есть столбец...

Даны два произвольных одномерных массива действительных чисел М1 и М2. Сформировать слиянием этих массивов упорядоченный массив М3 - C++
Помогите с работой на Borland C++ 5.02:Даны два произвольных одномерных массива действительных чисел М1 и М2. Сформировать слиянием этих...

Даны два натуральных числа a, b. Найти разность и произведение суммы цифр этих чисел - C++
Даны два натуральных числа a, b. Найти разность и произведение суммы цифр этих чисел. Вычисление суммы цифр числа оформить в виде функции.

Дано два одномерных массива размерностью n, сложить сумму этих массивов и найти наибольшее значение - C++
Дано два одномерных массива размерностью n, сложить сумму этих массивов и найти наибольшее значение. Решите пожалуйста :)

Что-то не хочет пахать :( | Даны два целочисленных массива К(m) и L(n). Найти наибольший элемент массива K, не имеющий себе равных в массиве L. - C++
Даны два целочисленных массива К(m) и L(n). Найти наибольший элемент массива K, не имеющий себе равных в массиве L. #include...

Найти скалярное произведение - C++
ДОБРООГО ДНЯ ВСИМ КТО МОЖЕ МЕНИ ДОПОМОГТИ В РИШЕНІ ДАНОЇ ЗАДАЧИ НЕХАЙ ДАНА МАТРИЦЯ N*N ВСІ ЕЛЕММЕНТИ ЯКОЇ РІЗНІ ЗНАЙДІТЬ СКАЛЯРНИЙ...

Даны два возрастающих массива x[k] и y[l]. Найти количество общих элементов - C++
Даны два возрастающих массива x и y. Найти количество общих элементов в этих массивах ( т. е. количество тех ...

Даны 2 упорядоченных одномерных массива. создать 3 одномерный массив, содержащий упорядоченные элементы 1 и 2 массива. - C++
Даны 2 упорядоченных одномерных массива. создать 3 одномерный массив, содержащий упорядоченные элементы 1 и 2 массива.

Найти скалярное произведение векторов - C++
Даны два вектора x, y есть Rn. Найти скалярное произведение векторов.

Найти скалярное произведение векторов - C++
Помогите пожалуйста, у самой никак не получается, надо написать программу на С++. Даны координаты двух n-мерных векторов A(a1; a2;..; an)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nameless
Эксперт C++
333 / 297 / 14
Регистрация: 16.06.2009
Сообщений: 486
02.03.2012, 18:34     Даны два одномерных массива А и B. Найти их скалярное произведение. #2
Lizardomsk,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
#include <array>
#include <algorithm>
 
template <std::size_t N, typename InputIterator>
struct ScalarProduct {
   static auto GetResult(InputIterator one, InputIterator two) 
      -> decltype( *one * *two) {
         return *one * *two + 
            ScalarProduct <N - 1, InputIterator>::GetResult(one + 1, two + 1);
   }
};
 
template <typename InputIterator>
struct ScalarProduct <1, InputIterator> {
   static auto GetResult(InputIterator one, InputIterator two)
      -> decltype(*one * *two) {
         return *one * *two;
   }
};
 
template <std::size_t N, typename InputIterator>
auto CalcScalarProduct(InputIterator one, InputIterator two)
   -> decltype(*one * *two) {
      return ScalarProduct <N, InputIterator>::GetResult(one, two);
}
 
int main() {
   std::array <int, 5> array_one = { 1, 2, 3, 4, 5 };
   std::array <int, 5> array_two = { 0, 1, 2, 3, 4 };
 
   std::cout << 
      CalcScalarProduct <5>(array_one.begin(), array_two.begin())
             << std::endl;
 
   return 0;
}
http://liveworkspace.org/code/254ad4...5e6469a83c0f39
diagon
Higher
1927 / 1193 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
02.03.2012, 19:20     Даны два одномерных массива А и B. Найти их скалярное произведение. #3
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <numeric>
 
int main()
{
    int a[] = { 1, 2, 3 }, a_size = sizeof(a) / sizeof(*a);
    int b[] = { -2, 4, -5 };
    
    std::cout << std::inner_product(a, a + a_size, b, 0) << std::endl;
}
NEO*
14 / 14 / 1
Регистрация: 02.11.2011
Сообщений: 22
02.03.2012, 19:40     Даны два одномерных массива А и B. Найти их скалярное произведение. #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
 
int main()
{
    int a[3]={1,2,3};
    int b[3]={4,5,6};
    int s=0;
    int i;
 
        for(i=0;i<3;i++)
    {
        s+=a[i]*b[i];
    }
    cout<<s;
    return 0;
}
Lizardomsk
0 / 0 / 0
Регистрация: 20.02.2012
Сообщений: 22
02.03.2012, 21:29  [ТС]     Даны два одномерных массива А и B. Найти их скалярное произведение. #5
нужно чтобы значения были введение с клавиатуры
NEO*
14 / 14 / 1
Регистрация: 02.11.2011
Сообщений: 22
02.03.2012, 21:36     Даны два одномерных массива А и B. Найти их скалярное произведение. #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
using namespace std;
 
int main()
{
    int a[3];
    int b[3];
    int s=0;
    int i;
 
    for(i=0;i<3;i++) cin>>a[i];
 
    for(i=0;i<3;i++) cin>>b[i];
 
        for(i=0;i<3;i++)
    {
        s+=a[i]*b[i];
    }
    cout<<s;
    return 0;
}
Yandex
Объявления
02.03.2012, 21:36     Даны два одномерных массива А и B. Найти их скалярное произведение.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru