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

найти индекс элемента массива ,имеющего минимальную сумму цифр - C++

Восстановить пароль Регистрация
 
Serraya
0 / 0 / 0
Регистрация: 04.04.2012
Сообщений: 20
04.04.2012, 00:51     найти индекс элемента массива ,имеющего минимальную сумму цифр #1
1)найти индекс элемента массива ,имеющего минимальную сумму цифр
2)выяснить сумма каких элементов бльше, тех что првее или левее элемнта из задания 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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std; 
 
 
const int N=10;
 
void vvod (int &a, int &b)
{
        cout<<"Введите размер минимально-возможного элемента в массиве ";
        cin>>a;
        cout<<endl;
        do
        {
            cout<<"Введите размер максимально-возможного элемента в массиве ";
            cin>>b;
            cout<<endl;
        }while (b<a);
}
 
void zapol (int (&x)[N], int a,int b)
{ 
    for (int i = 0; i < N; ++i)
    {
        x[i]=rand()%(b-a+1)+a;
    }
}
 
 
int proverka (int r)
{
int S=0;
while (r>=1)
{ 
S+=r%10;
r=r/10;
}
return S;
}
int poisk (int* s_arr, int n)
{
int r,min,S,Index=0;
r=abs(s_arr [0]);
while (r>=1)
{ 
S+=r%10;
r=r/10;
}
min=S;
for (int count=1; count<n; ++count) 
{
r=abs(s_arr [count]);
int S = proverka(r);
if (S<min) Index=count;
if (S<min)
{ 
Index=count;
S=min;
}
return Index;
}
}
 
int sravn (int x[],int n,int Index)
{
        int S1,S2;
        for (int i=0; i<Index; i++)
        S1+=x[i];
        for (int i=Index+1; i<n; i++)
            S2+=x[i];
        if (S1>S2)
            return 1;
        if(S1<S2)
            return 0;
        else return 2;
}
 
 
int main() 
{
    setlocale(LC_ALL, "Russian");
    cout<<"Лабораторная №2 вариант 10."<<endl<<endl;
    int s=0, k=0,x[N],a, b, Index,i,z,y,s_arr,n;
    vvod(a,b);
    zapol(x, a, b);
    cout<<endl;
    poisk (x,n);
    int res_sravn=sravn(x,n,Index);
    if(res_sravn==1) cout<<"сумма слева больше";
    if(res_sravn==0) cout<<"сумма справа больше";
    if(res_sravn==2) cout<<"суммы равны";
 
system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2012, 00:51     найти индекс элемента массива ,имеющего минимальную сумму цифр
Посмотрите здесь:

Найти индекс минимального по модулю элемента массива C++
C++ Найти сумму элементов массива, номер которых больше минимального номера элемента, имеющего максимальное значение в массиве
C++ Найти сумму тех элементов массива, цифровая запись которых дает четную сумму цифр, а также найти максимальный элемент массива
C++ Найти индекс максимального элемента заданного массива
C++ Найти сумму и количество цифр числа, а также максимальную и минимальную его цифры
Найти индекс минимального элемента двумерного массива C++
C++ Найти индекс минимального элемента массива
Найти индекс первого max элемента массива C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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