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

Коментарии к программе - C++

Восстановить пароль Регистрация
 
feelstor
0 / 0 / 0
Регистрация: 25.12.2011
Сообщений: 13
02.07.2012, 22:59     Коментарии к программе #1
Все доброго времени суток.Можете объяснить что выполняет функция в программ?)))
Буду благодарен за помощь)))
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
#include <iostream>
#include <algorithm>
#include <cmath>
#include <conio.h>
 using namespace std;
int qaz(const double & a, const double & b) 
{ 
return fabs(a) < fabs(b);
 }
 
int main()
 
{
     setlocale(LC_ALL,"rus");
 
    double * arr;
    size_t cnt;
    
    cout << "Количество элементов: ";
    cin >> cnt;
    arr = new double [ cnt ];
    
    for ( size_t i = 0; i < cnt; ++i )
{
        cout << "Элемент [" << i << "] = ";
        cin >> arr[i];
    }
    
    cout << "Номер максимального элемента: " << distance(arr, max_element(arr, arr + cnt, qaz)) << endl;//??????????
    
    delete [] arr;//удаляем элементы с динамического массивва
    system("PAUSE");
    return 0;
    _getch();
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.07.2012, 22:59     Коментарии к программе
Посмотрите здесь:

коментарии C++
C++ Коментарии к программе
C++ Коментарии к программе
C++ Нужны комментарии к программе
C++ Коментарии
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
g-h
67 / 67 / 1
Регистрация: 03.06.2012
Сообщений: 176
02.07.2012, 23:02     Коментарии к программе #2
Цитата Сообщение от feelstor Посмотреть сообщение
C++
1
2
3
4
int qaz(const double & a, const double & b) 
{ 
return fabs(a) < fabs(b);
 }
Если a по модулю меньше b по модулю, то эта функция возвращает 1. В других случаях возвращает 0.
feelstor
0 / 0 / 0
Регистрация: 25.12.2011
Сообщений: 13
02.07.2012, 23:06  [ТС]     Коментарии к программе #3
Спасибо,но мне нужно объяснить 30 строку)))
g-h
67 / 67 / 1
Регистрация: 03.06.2012
Сообщений: 176
02.07.2012, 23:12     Коментарии к программе #4
Цитата Сообщение от feelstor Посмотреть сообщение
C++
1
cout << "Номер максимального элемента: " << distance(arr, max_element(arr, arr + cnt, qaz)) << endl;
Я не знаю что это за функция distance()...
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
02.07.2012, 23:12     Коментарии к программе #5
max_element(arr, arr + cnt, qaz) это нахождение итератора на максимальный элемент в массиве по критерию, который определяется в функции qaz. функция возвращает итератор на максимальный элемент.

функция distance - получает на вход пару итераторов и возращает расстояние между ними.
например если ей отдать указатель на начало массива и на его второй элемент, то она вернет двойку (или еденицу. не помню, нужно проверить)

т.о вызов
distance(arr, max_element(arr, arr + cnt, qaz)) вернет расстояние между началом массива и его максимальным элементом, т.е. индекс максимаьлного элемента.
Yandex
Объявления
02.07.2012, 23:12     Коментарии к программе
Ответ Создать тему
Опции темы

Текущее время: 00:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru