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

минимальный индекс - C++

Восстановить пароль Регистрация
 
Depressa
3 / 3 / 0
Регистрация: 26.11.2011
Сообщений: 83
26.12.2011, 23:44     минимальный индекс #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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <stdlib.h>
using namespace std;
int badboys (double* a,int size);
void mas_out (double* a,int size);
void mas_in (double* a,int size);
int main(int argc, char *argv[])
{
    double* mas;
    int size;
    cout<<"Enter size";
    cin>> size;
    mas= new double[size];
    mas_in(mas,size);
    mas_out(mas,size);
    delete [] mas;
    return 0;
}
void mas_in (double* a,int size)
{
    for(int i=0;i < size;++i)
        cin>> a[i];
 
}
int badboys (double* a,int size)
{
    int i, imin=0;
    for(int i=0;i < size;++i)
    {
        if(a[i]> a[imin])
        {
            imin=i;
        }
    }
    return imin;
}
void mas_out (double* a,int size)
{
    double  min=0, index=0;
    for(int i=0;i < size;++i)
        cout <<a[i]<< endl;
    for(int i=1;i < size;++i)
    {
        if(a[i]<=min)
        {
            min=a[i];
            index=i;
        }
    }
        cout <<"min index["<<index<<"]"<<endl;
 
}
вот код
вот задание:
напишите функцию, которая вычисляет индекс минимального элемента массивы. массив содержит элементы типа double. массив передается в функцию через два параметра -указатель на первый элемент, и размер массива.

Так же напишите две функции первая -для вывода элементов массива на экран и вторая- для ввода с клавиатуры.

в функции main протестируйте работу ваших функций.память под массив(ы), с которыми идет работа , выделять/освобождать динамически, через функции new/delete

общая последовательность действий программы такова
1 выделяется память под массив(ы) небольшого обьема (5-10 элементов , на ваше усмотрение)
2 массив(ы) вводятся с клавиатуры
3 массив(ы) обрабатываются функцией из задания
4 массив(ы) выводятся на экран







что мне исправить, часа 2 делал её перед преподом, он каждый раз находит ошибки,говорит я функцию мою нигде не вывожу не объявляю, а считаю массивы дважды и не там где надо
Помогите с задачей
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2011, 23:44     минимальный индекс
Посмотрите здесь:

C++ Переменная + индекс
Индекс C++
индекс масива C++
Массивы, нужно определить минимальный элемент, вывести его значение и индекс... C++
Решить уравнение p*x2+d*x+r=0, где p - минимальный элемент матрицы A; d –минимальный элемент матрицы B; r - минимальный элемент матрицы C. C++
C++ В двухмерном массиве с целыми коэффициентами, для каждого столбца найти минимальный элемент в этом столбце и индекс этого элемента.
Выведите на экран массив, его минимальный элемент и его индекс в массиве C++
C++ В каждой строке найти минимальный элемент, затем среди них найти максимальное и вывести на экран индекс этого элемента

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
26.12.2011, 23:59     минимальный индекс #2
в функции mas_out ты должен только выводить массив, а ты туда еще запихал код поиска индекса мин. элемента. Просто убери из нее лишнее. И в main сделай вызов badboys (супер название конечно) и выведи на экран минимальный элемент и его индекс.
все

Добавлено через 9 минут
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
#include <iostream>
#include <stdlib.h>
 
using namespace std;
 
int min_index (double* a,int size);
void mas_out (double* a,int size);
void mas_in (double* a,int size);
 
int main()
{
    double* mas;
    int size;
    cout<<"Enter size"<<endl;
    cin>> size;
    mas= new double[size];
    cout << "Enter array" << endl;
    mas_in(mas,size);
    int index = min_index(mas, size);
    cout << "Min index: " << index << endl;
    cout << "Min element: " << mas[index] << endl;
    cout << "array: " << endl;
    mas_out(mas,size);
    delete [] mas;
    system("Pause");
    return 0;
}
 
void mas_in (double* a,int size)
{
    for(int i=0;i < size;++i)
        cin>> a[i];
 
}
 
int min_index(double* a,int size)
{
    int imin=0;
    for(int i=1;i < size;++i)
    {
        if(a[i] < a[imin])
        {
            imin=i;
        }
    }
    return imin;
}
 
void mas_out (double* a,int size)
{
    for(int i=0;i < size;++i)
        cout <<a[i]<< " ";
    cout << endl;
}
Yandex
Объявления
26.12.2011, 23:59     минимальный индекс
Ответ Создать тему
Опции темы

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