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

Проверить имеется ли в массиве эл-мы, содержащие хотя бы одну пару взаимно обратных чисел - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создание статической библиотеки http://www.cyberforum.ru/cpp-beginners/thread535943.html
Вообщем надо создать статическую библиотеку lib для классов. Классов очень много и они разбиты по хедерам .h . Я создал новый проект в win32 console application и в свойствах указал "статическая...
C++ Области, описываемые логическими выражениями Для данных областей составить линейную программу, которая печатает true, если точка с координатами (х, у) принадлежит закрашенной области, и false — в противном случае: http://www.cyberforum.ru/cpp-beginners/thread535940.html
вичислить значения функции на интервале от заданного параметра C++
вычислить значения функции y=F(x) для значений аргумента x, изменяющегося в интервале от Xначальное до Xконечное c шагом ∆x. из полученных данных сформировать таблицу содержащую столбцы – №п.п;...
Массивы, нужно определить минимальный элемент, вывести его значение и индекс... C++
Здравствуйте, мне нужно определить минимальный элемент. Вывести его значение и индекс. Тип элементов массива Float Количество элементов массива 15 Спасибо.
C++ Вычислить значения функции http://www.cyberforum.ru/cpp-beginners/thread535936.html
вычислить значения функции y=F(x) для значений аргумента x, изменяющегося в интервале от Xначальное до Xконечное c шагом ∆x. из полученных данных сформировать таблицу содержащую столбцы – №п.п;...
C++ Вызовы функций с указателями У меня всё получилось с первыми 3 функциями , а что в 4 я совсем не пойму.. #include <stdio.h> #include <math.h> #include <conio.h> #include <iostream> using namespace std; ... подробнее

Показать сообщение отдельно
Catstail
Модератор
22618 / 10979 / 1779
Регистрация: 12.02.2012
Сообщений: 18,122
01.04.2012, 17:31
Придется выполнить примерно 0.5*N^2 проверок.

Выглядеть это может примерно так:

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
#include "math.h"
#include "iostream.h"
 
double A[]={1,2,4,0.5,5.8,0.25};
 
int ChkInv( double *a, int n)
 
{
    int i,j,k=0;
 
    for (i=0; i <= n-1; i++)
        for (j=0; j <= n-1; j++)
            if ((i != j) && (fabs(*(a+i)*(*(a+j))-1.0) <= 0.0000001)) k++;
        
    return k/2;
 
}
 
 
int main(int argc, char* argv[])
{
 
    cout << ChkInv(A,6) << endl;
    return 0;
}
Результат делится на 2, т.к. каждое число учитывается дважды
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru