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

Найдите ошибку - C++

Восстановить пароль Регистрация
 
Busterr
-25 / 1 / 0
Регистрация: 25.09.2011
Сообщений: 50
28.10.2011, 21:45     Найдите ошибку #1
Не могу понять в чем ошибка.
Write a function that find the sum of the elements that are located between first two zeros.

Input:
First line contains n (1<=n<=100)
Than n numbers are inputed.

Output:
The sum between first two zeros.


Sample input:
8
0 1 1 1 1 1 1 0

Sample output:
6


Код
#include <iostream>

using namespace std;
int n;
void zero(int mas[]){
int f=0; int l=0; int d=0;
int sum=0; int k=0;
for(int i=0;i<n;i++){
  if(mas[i]==0)
    {k++;}
}
for(int i=0;i<n;i++){
if (k==0 || k==1)
  break;}
  
  if(k>=2){
 for(int i=0;i<n;i++)
    {
    while(mas[f]>0) 
  {
    f++; 
  }
    
      l=f+1;
    while(mas[l]>0) 
    { 
    l++; 
  }
      }
d=l-f-1;
  for(int i=0;i<d;i++)
  {
   sum+=mas[f+1];
  f++;
  
  }cout<<sum;
  }
    

   
  
}
int main(){
  
  int arr[100];
  
    cin>>n;
  for(int i=0;i<n;i++)
   { cin>>arr[i];}
  zero(arr);
 

  return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2011, 21:45     Найдите ошибку
Посмотрите здесь:

найдите ошибку C++
C++ Найдите ошибку
Найдите ошибку C++
C++ найдите ошибку
C++ Найдите ошибку
C++ Найдите ошибку...
C++ Найдите ошибку
Найдите ошибку C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
amor1k
Студент
 Аватар для amor1k
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
28.10.2011, 22:30     Найдите ошибку #2
держи готовую
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
#include <iostream>
using namespace std;
int main()
{
        int n, j1 = 0, sum = 0, j2 = 0;
        cout << "Enter n: ";
        cin >> n;
    int * a = new int [ n ];
    for (int i = 0; i < n; i++)
        {
        cin >> a[i];
        }
        for (int i = 0; i < n - 1; i++)
        {
                if(a[i] == 0 && a[i + 1] != 0)
                {
                        j1 = i;
                        break;
                }
        }
        for (int i = j1 + 2; i < n; i++)
        {
                if(a[i - 1] != 0 && a[i] == 0)
                {
                        j2 = i;
                        break;
                }
        }
        int i = j1 + 1;
        while(i < j2)
        {
                sum += a[i];
                i++;
        }
        cout << "Summa: " << sum << endl;
    delete [] a;
    return 0;
}
Yandex
Объявления
28.10.2011, 22:30     Найдите ошибку
Ответ Создать тему
Опции темы

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