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

Как исправить про-гу - C++

Восстановить пароль Регистрация
 
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
07.06.2010, 15:21     Как исправить про-гу #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
/*Найти сумму и число тех элементов заданного массива X1,X2, … ,Xn,
которые попадают на заданный отрезок.*/
 
#include <iostream>
using namespace std;
 int main() 
 {
    setlocale(LC_ALL, "Russian");
  int arr[50];
   int n, i;
   int sum = 0, kl = 0;
   int a, b;
   cout << "Размер массива N: ";
        cin >> n;
        
        for(i = 0; i < n; i++)
        {
           cout << "Массив arr[" << i << "]= ";
           cin >> arr[i];
           
        }
 
        cout << "Границы отрезка: ";
        cin >> a >> b;
        
        for(i = a; i < b; i++)
 
        {
           sum += arr[i];
           kl++;
        }
           cout << "Размер массива = " << n << endl;
           cout << "Границы отрезка: " << a << "   " << b << endl;
           cout << "Сумма элементов = " << sum << endl;
           cout << "Количество элементов = " << kl << endl;
           return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
toxa92
 Аватар для toxa92
167 / 94 / 2
Регистрация: 16.04.2010
Сообщений: 464
07.06.2010, 15:29     Как исправить про-гу #2
А чем вас не устраивает данный вариант? Никаких явных ошибок я не вижу
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
07.06.2010, 17:02  [ТС]     Как исправить про-гу #3
Преподаватель мне сказал, что моя прог-а считает сами индексы, а не значения элементов.((
toxa92
 Аватар для toxa92
167 / 94 / 2
Регистрация: 16.04.2010
Сообщений: 464
07.06.2010, 17:07     Как исправить про-гу #4

Не по теме:

странный преподаватель



в 29 строчке к сумме прибавляется текущий элемент. индекс это i, значение это arr[i]

Добавлено через 52 секунды
Стоп. А границы отрезка задаются для индексов или для значений элементов массива?
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
07.06.2010, 17:16  [ТС]     Как исправить про-гу #5
Может, в границах и проблема?)) Пожалуйста, исправьте так, как надо! Мне до завтра ещё 4 задачи надо сделать, причем все задачи с полной разработкой(((
toxa92
 Аватар для toxa92
167 / 94 / 2
Регистрация: 16.04.2010
Сообщений: 464
07.06.2010, 17:19     Как исправить про-гу #6
Я имею ввиду по условию границы задаются для индексов или для значений? у вас сейчас для индексов,а как надо я не могу понять
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
07.06.2010, 17:24  [ТС]     Как исправить про-гу #7
Ну вот само задание: Найти сумму и число тех элементов заданного массива X1,X2, … ,Xn,
которые попадают на заданный отрезок.
toxa92
 Аватар для toxa92
167 / 94 / 2
Регистрация: 16.04.2010
Сообщений: 464
07.06.2010, 17:37     Как исправить про-гу #8
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
/*Найти сумму и число тех элементов заданного массива X1,X2, … ,Xn,
которые попадают на заданный отрезок.*/
 
#include <iostream>
using namespace std;
int main() 
{
setlocale(LC_ALL, "Russian");
int arr[50];
int n, i;
int sum = 0, kl = 0;
int a, b;
cout << "Размер массива N: ";
cin >> n;
for(i = 0; i < n; i++)
{
    cout << "Массив arr[" << i << "]= ";
    cin >> arr[i];
}
cout << "Границы отрезка: ";
cin >> a >> b;
for(i = 0; i < n; i++)
    if ((arr[i]>=a)&&(arr[i]<=b))
    {
        sum += arr[i];
        kl++;
    }
cout << "Размер массива = " << n << endl;
cout << "Границы отрезка: " << a << "   " << b << endl;
cout << "Сумма элементов = " << sum << endl;
cout << "Количество элементов = " << kl << endl;
return 0;
}
возможно так?
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,689
07.06.2010, 17:41     Как исправить про-гу #9
toxa92, а если я введу N=60, что будет с вашей программой?
toxa92
 Аватар для toxa92
167 / 94 / 2
Регистрация: 16.04.2010
Сообщений: 464
07.06.2010, 17:44     Как исправить про-гу #10
А это и не моя программа) я тама одну строчку добавил и табуляцию нормализовал. а вообще я бы сделал через динамический массив, но в задаче этого не ставится
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
07.06.2010, 17:48  [ТС]     Как исправить про-гу #11
Спасибо! Попробую эту программу предоставить в качестве отчёта)) Ну а как Вы сами думаете, это правильно?))
toxa92
 Аватар для toxa92
167 / 94 / 2
Регистрация: 16.04.2010
Сообщений: 464
07.06.2010, 17:56     Как исправить про-гу #12
Если вы учитесь не в техническом ВУЗе и скажете, что промежуток задавался для значений элементов массива - примут.
Если в техническом - в программе есть куча багов (например пользователь не знает, что размер массива ограничен 50-ю элементами, границы отрезка может вбить задом-наперед, вместо using namespace std, лучше бы прописывать std::cin и std::cout - но это скорее недочет, который может выйти боком в большом проекте)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.06.2010, 18:12     Как исправить про-гу
Еще ссылки по теме:

C++ Как исправить ошибки
Как это работает? Я хочу спросить как работает C++ и где можно про него почитать C++
C++ Как исправить ошибки?

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

Или воспользуйтесь поиском по форуму:
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
07.06.2010, 18:12  [ТС]     Как исправить про-гу #13
Ох, нет! Я учусь в СУЗе))

Добавлено через 1 минуту
Спасибо огромное за помощь! Ещё бы с остальными заданиями разобраться(((
Yandex
Объявления
07.06.2010, 18:12     Как исправить про-гу
Ответ Создать тему
Опции темы

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