Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
7 / 7 / 1
Регистрация: 20.12.2010
Сообщений: 392
1

Алгоритмы. не пойму в чём ошибка...

10.04.2012, 20:41. Просмотров 395. Ответов 2
Метки нет (Все метки)

В одномерном массиве, состоящем из п вещественных элементов, вычислить:
1) номер максимального по модулю элемента массива;
2) сумму элементов массива, расположенных после первого положительного элемента.
Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых лежит в интервале [а,Ь], а потом — все остальные.
3) Построить класс для работы с очередью с приоритетами, который содержит информацию о наличии аудиодисков в магазине: порядковый номер диска, исполнитель и название альбома, количество треков, есть ли диск в наличии.
Программа должна обеспечивать: начальное формирование списка, введение исполнителя и название альбома дисков и установление программой значения признака «есть ли в наличии диск». Аналогичным образом изменяется информация о диске. По запросу выдаются сведения о диске.
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#include<iostream>
#include<algorithm>
#include<numeric>
#include<iterator>
#include<functional>
#include<locale>
#include<time.h>
#include<stdlib.h>
 
struct R : public std::unary_function<void, float>{
    float operator()() const{
        return((float) rand()/ RAND_MAX - 0.5f) * 6.0f;
    }
};
void generate(float* arr, size_t N){
    std::generate_n(arr, N, R());
}
bool lt(float a, float b){
    return fabs(a) < fabs(b);
}
size_t max_abs(const float* arr, size_t N){
    return std::max_element(arr, arr + N, &lt) - arr;
}
float sum(const float* arr, size_t N){
    const float* pos = std::find_if(arr, arr + N, std::bind2nd(std::greater<float>(), 0.f));
    if (pos == arr + N)
        return 0.f;
    return std::accumulate(++pos, arr + N, 0.f);
}
struct Z : public std::unary_function<float, bool>{
    Z(int a, int b) : a_(a), b_(b) {}
    bool operator() (float f) const{
    const int i = (int) f;
    return i >= a_&& i <= b_;
    int a_, b_;
    }
};
void reorder(float* arr, size_t N, int a, int b){
    std::partition(arr,arr + N, Z(a, b));
}
template<size_t N>
std::ostream& operator<<(std::ostream& os, const float (&arr) [N]){
    typedef std::ostream_iterator<float> 0;
    std::copy(arr, arr + N, 0(os, ""));
    return os;
}
int main(){
    setlocale(LC_ALL, "");
    srand((unsigned) time(NULL));
    const size_t N = 10;
    float arr [N] = {0};
    generate(arr,10);
    std::cout<<"Iskhodnyy massiv:"<<std::endl;
    std::cout<<arr<<std::endl<<std::endl;
    std::cout<<"Nomer maksimalnogo po modulyu elementa:"<<max_abs(arr, N)<<std::endl<<std::endl;
    reorder(arr, N, 0, 1);
    std::cout<<"Posle preobrazovaniya s intervalom[0, 1]:"<<std::endl;
    std::cout<<arr<<std::endl;
    system("pause");
    return 0;
}
помогите разобраться с ошибками....(

Добавлено через 4 часа 7 минут
программа не работает, а где именно ошибка компилятор не выдаёт...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.04.2012, 20:41
Ответы с готовыми решениями:

Не пойму в чём ошибка!
13. Вычислить y = xn по следующему правилу: y = ( xn/2 )2, если n четное и y = x ...

Не пойму в чём ошибка
#include &lt;cstdio&gt; #include &lt;cstdlib&gt; #include &lt;iostream.h&gt; int main () { int a,b,i,j; ...

Не пойму ,в чём ошибка . Всё компилируется
Я создал функцию поиска по заданном ключу , ключ вводится с клавиатуры . int Poisk(int *arr,int...

Задачка детская, но не пойму в чём ошибка
По длинам гипотенузы и катета прямоугольного треугольника определить длину второго катета и площадь...

2
Каратель
Эксперт С++
6598 / 4019 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
10.04.2012, 20:45 2
Цитата Сообщение от Кротяка Посмотреть сообщение
а где именно ошибка компилятор не выдаёт..
ложь
http://liveworkspace.org/code/... e0ae5d11e7

Цитата Сообщение от Кротяка Посмотреть сообщение
помогите разобраться с ошибками....(
имена идентификаторам нужно давать осмысленные
Z, R - это бессмыслица - один из факторов сподвигший автора кода на ошибки
0
7 / 7 / 1
Регистрация: 20.12.2010
Сообщений: 392
10.04.2012, 21:09  [ТС] 3
Цитата Сообщение от Jupiter Посмотреть сообщение
имена идентификаторам нужно давать осмысленные
Z, R - это бессмыслица - один из факторов сподвигший автора кода на ошибки
то есть?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.04.2012, 21:09

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Не пойму в чём ошибка. Выделение части массива
Суть программы заключается в том, чтобы выделить часть массива между определенными символами. В...

Ошибка 2 error LNK2019, не пойму в чем ошибка
Выдает такую ошибку: Ошибка 2 error LNK2019: ссылка на неразрешенный внешний символ &quot;int __cdecl...

Выскакивает ошибка Stack around the voriable 'text' was corrupted. Подскажите пожалуйста в чём ошибка
Выскакивает ошибка Stack around the voriable 'text' was corrupted. Подскажите пожалуйста в чём...

Не пойму в чём ошибка
Доброе время суток дорогие участники форума! Не пойму в чём ошибка. Написал простую прграмму на...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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