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

Минимальный по модулю элемент массива - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Бинарное дерево и сортировка http://www.cyberforum.ru/cpp-beginners/thread127800.html
Помогите пожалуйста кто чем может!! И скажите как ваще это дерево должно выглядеть на экране?! Задача такова: Напишите программу ведения банковских счетов. Ежемесячная ставка по банковским вкладам составляет 6% от суммы вклада. Если вклад открыт до десятого числа текущего месяца, то проценты начисляются за весь месяц. Для того чтобы вкладчики не изымали часто вклады, приняты следующие меры: с...
C++ степень создать класс для вычисления числа n в степени k, перегрузить оператор * умножения. помогите перегрузить оператор, желательно с объяснением, хотяб кратким, а то тему пропустил..) # include <conio.h> # include <stdio.h> # include <math.h> class step { int k, b, n,i; public: step() http://www.cyberforum.ru/cpp-beginners/thread127790.html
Нахождение К путей Минимальной суммарной длины Во взвешенном графе с неотрицательными весами(Алгоритм Йена). C++
Нахождение К путей Минимальной суммарной длины Во взвешенном графе с неотрицательными весами(Алгоритм Йена). Вот тут у меня есть код только он написан на Microsoft Visual C++ 6.0 и помоему не работает. И еще переписать код программы на более новую версию. Помогите переделать. #include<iostream.h> #include<string.h> #include<stdio.h> #include<stdlib.h> #include<conio.h> #define word...
fwrite C++
Как можно передать двумерный массив в функцию fwrite или fread(чтобы записать в файл с двумерного массива с помощью fwrite)????
C++ операторов принятия решения http://www.cyberforum.ru/cpp-beginners/thread127770.html
Помогите написать программу с оператором принятия решения. Принадлежит ли точка с введенными координатами заштрихованной области:
C++ Использование структур Доброго времени. Нужно помочь знакомой с лабой на с++, сам его почти не знаю ибо в универе в основном паскаль, но немного знаю си, так что кое-что могу написать, но здесь сам не справлюсь, а времени свободного не много на освоение.Вообщем есть такая задача: "разработка классов, реализующих задачу соответственно индивидуальному заданию: Измеряемый сигнал задан последовательностью точек... подробнее

Показать сообщение отдельно
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2294 / 1664 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
03.06.2010, 18:27     Минимальный по модулю элемент массива
Цитата Сообщение от winelove Посмотреть сообщение
минимальный по модулю элемент массива;
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <cstdlib>
#include <algorithm>
#include <iostream>
 
bool Compare(int arg1, int arg2) {
  return std::abs(arg1) < std::abs(arg2);
}
 
// Возвращает индекс минимального по модулю элемента массива
int Min(const int* arr, size_t size) {
  return std::min_element(arr, arr + size, Compare) - arr;
}
 
int main() {
  int arr[] = { -10, 2, 4, 2, 2, -1};
  std::cout << Min(arr, sizeof(arr) / sizeof(arr[0])) << std::endl;
  return 0;
}
Результат: http://codepad.org/E69UXvEb

Цитата Сообщение от winelove Посмотреть сообщение
сумму модулей элементов массива, расположенных после первого элемента, равного нулю
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <cstdlib>
#include <algorithm>
#include <iostream>
 
int Sum(int arg1, int arg2) {
  return arg1 + std::abs(arg2);
}
 
int SumAfterZero(const int* arr, size_t size) {
  const int* zero = std::find(arr, arr + size, 0);
 
  return zero == arr + size? 0 : std::accumulate(zero + 1, arr + size, 0, Sum);
}
 
int main() {
  int arr[] = { -10, 0, -4, 2, 12, -1};
  std::cout << SumAfterZero(arr, sizeof(arr) / sizeof(arr[0])) << std::endl;
  return 0;
}
Результат: http://codepad.org/KxCO7RLl

Цитата Сообщение от winelove Посмотреть сообщение
Преобразовать таким образом, чтобы в первой его половине, располагались элементы, стоявшие в четных позициях, а во второй половине – элементы, стоявшие в нечетных позициях
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
#include <cstdlib>
#include <functional>
#include <algorithm>
#include <iterator>
#include <iostream>
 
struct IsInEvenPosition : unary_function<int,bool> {
public:
  IsInEvenPosition() 
  : counter(0) {
  }
 
  bool operator()(int arg) {
    return counter++ % 2 == 0;
  }
 
private:
  int counter;
};
 
int main() {
  int    arr[] = { -10, 0, -4, 2, 12, -1, 5};
  size_t size  = sizeof(arr) / sizeof(arr[0]);
  
  std::stable_partition(arr, arr + size, IsInEvenPosition());
  std::copy            (arr, arr + size, std::ostream_iterator<int>(std::cout, " "));
  
  return 0;
}
Результат: http://codepad.org/8McXbLuo.
 
Текущее время: 12:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru